1 Introduction

Modelling dynamic structural contact with multiphase granular soils (i.e., saturated and unsaturated soils) has many applications such as pile installation, ground improvement [1] and ground assessment using dynamic indentation. However, this class of problems is computationally challenging since the accurate representations of the interface, the contributions of suction and water pressure to the elastoplastic soil behaviour, and drainage conditions generally demand the adoption of “fully coupled models” [2,3,4,5,6,7,8] which are nonlinear and cannot generally guarantee unconditional stability. Therefore, novel solutions to improve the stability of such nonlinear models are needed as geotechnical applications of these contact models are broad and elastoplastic soil models are becoming more complex.

This paper presents a novel solution to improve the stability of numerical models of structural contact with multiphase granular soils which are mathematically described by multisurface plasticity models (e.g., [9]) that can simulate cyclic and monotonic behaviour of granular soils. These plasticity models generally use an algorithm to automatically detect the occurrence of a load reversal. To capture the experimentally observed increase in the soil stiffness in the initial stages of a load reversal during cyclic loading [10, 11], the plastic modulus is often reset to infinity (i.e., a very large value in the context of numerical analyses) whereby a stiff pseudo-elastic behaviour is predicted [12]. Nonetheless, if spurious numerical oscillations (instead of true loading reversals) trigger a tiny reversal event that is immediately followed by reloading, the plasticity model can unrealistically become stiff and significantly overshoot stress. The occurrence of overshooting is an undesirable situation in numerical simulations that can challenge the overall stability of the numerical solutions. In dynamic and coupled contact problems, numerical oscillations generally cannot be avoided, and therefore, early termination of the analyses due to stress overshooting can become a major problem demanding appropriate treatment.

Several solutions have been proposed to resolve the overshooting issue in advanced plasticity models for saturated soils. In [13] using a “virtual bounding surface” for solving the overshooting problem was proposed; a solution that appears to be only applicable to the multilayer model for saturated soils proposed by the authors. The authors also developed an implicit integration scheme that included their proposed strategy. An alternative approach for solving the overshooting problem is the development of measures to automatically prevent the plastic modulus from drastic changes when spurious oscillations trigger the reversal [9, 14,15,16,17,18,19]. In this approach, a criterion is defined to automatically evaluate if the reversal is a true reversal or an unrealistic reversal that is induced by spurious oscillations. Such an evaluation is often made by checking if the magnitude of the plastic deviatoric strain during the load reversal is above or below a predefined threshold [15].

To the best of the authors’ knowledge, there are no solutions for the overshooting problem in advanced unsaturated soil models that can simulate cyclic behaviour. Experimental results suggest a significant impact of suction and the degree of saturation on cyclic and monotonic volume change behaviour of unsaturated granular soils (e.g., [20,21,22]). To capture this impact in unsaturated soils, different from saturated soil models, key aspects of plasticity of unsaturated soils such as the hardening law, flow rule, and plastic modulus are often defined as a function of suction and/or the degree of saturation. In analyses of dynamic structural contact with unsaturated soils, effective drainage of pore water and air pressure may not be possible during the analyses. In such conditions, the unsaturated soil model can be prone to stress overshooting since unrealistic reversal events can be triggered by spurious oscillations of suction/air pressure, pore water pressure, the degree of saturation, and the effective stress (in addition to displacement). Potential solutions to overshooting problems in unsaturated soil models can be developed by generalising existing solutions which were developed specifically for saturated soil models. Nonetheless, such potential solutions need to be rigorously tested against spurious oscillations in factors such as suction and degree of saturation, which are exclusive to the analyses of unsaturated soils. Also, robust stress integration schemes with these solutions need to be developed to facilitate the implementation of advanced unsaturated soil models to finite element packages. This study will address these knowledge gaps and propose two solutions to mitigate the overshooting problem in a representative multisurface plasticity model known as MUD (Model for Unsaturated soil Dynamics) [23]. The performance of the integration scheme and the overshooting solutions will be evaluated in a series of analyses of a contact-impact problem involving multiphase granular soils.

We will begin with a short introduction to the representative constitutive model and then discuss the issue of overshooting by giving several numerical examples. The examples highlight the limitations of an existing approach to dealing with this issue. To resolve these limitations, we formulate a novel approach to effectively prevent stress overshooting and present the associated numerical integration strategy. In a subsequent section, boundary value problems are solved to evaluate the efficiency of the proposed scheme in solving frictionless contact problems involving multiphase soils.

2 Constitutive model

2.1 General definition

The soil model MUD is a multisurface model for capturing the cyclic and monotonic behaviour of saturated and unsaturated granular soils. This model establishes a direct relationship between the changes in the stress ratio and the kinematic hardening parameter by defining a linear loading surface in the space defined by the mean effective stress and deviatoric stress. Through such a definition, the model can eliminate the need to enforce the consistency conditions at the end of the integration process; a feature that simplifies the stress integration algorithm [24]. The model also eliminates the purely elastic region by defining a “loading surface” [25] that always passes through the current stress state which further simplifies the explicit stress integration algorithm as it allows the removal of the algorithms that are needed for calculating the plastic portion of the applied strain increment in each time step of the analysis. The model can simulate soil behaviour under a wide range of hydro-mechanical loads by considering the impact of stress-induced anisotropy on hardening and flow rules by employing Bishop’s effective stress. It should be noted that the definition of the Bishop’s effective stress parameter is not unique and some notable suggestions for this parameter are the degree of saturation, [26], an “effective degree of saturation” [27, 28], and a function of suction [29]. For granular soils with a negligible residual degree of saturation in a dry state, the first two suggestions can be considered nearly the same where the Bishop’s parameter is equal to the degree of saturation [26, 30,31,32]. Nonetheless, often a combination of Bishop’s effective stress and an additional strain-like quantity such as suction, \({p}_{c}\) is used to more accurately describe hardening/softening induced by the changes in the degree of saturation (or suction) [23, 31, 33, 34]. In MUD, the Bishop’s parameter is taken as the degree of saturation, \({S}_{w}\) [26] and the strain-like quantity is the “bonding variable”, \(\xi \) [35]. The parameter \(\xi \) is a scalar quantity and denotes the average intergranular force generated by the presence of water menisci in the soil skeleton and is defined as

$$ \xi = \left( {1 - S_{w} } \right)g\left( {\tilde{p}_{c} } \right) $$
(1)

where \({\widetilde{p}}_{c}\) is a normalised suction (with respect to the atmospheric pressure) and \(g\left({\widetilde{p}}_{c}\right)\) describes the intergranular force exerted by the water meniscus for which the hyperbolic formula given in [30] is used, i.e., \(g\left( {\tilde{p}_{c} } \right) = 1 + \frac{{\tilde{p}_{c} }}{{10.7 + 2.4{ }\tilde{p}_{c} }}\). The model is formulated within the critical state theory and uses the concept of the “state parameter” [36] that enables a unified description of the response of granular soils at different initial void ratios. The Soil Water Retention Curve (SWRC) relates the matric suction to the degree of saturation, and the shape is a function of the pore size distribution and voids ratio [37, 38]. The critical state line is a generalisation of the model proposed in [39] by incorporating a bonding variable. In addition, MUD employs a combination of kinematic and isotropic hardening laws to simulate different stress paths. Stress ratio changes are macroscopically modelled by a kinematic hardening law. The evolution of isotropic hardening parameter, \(\alpha_{iso}\) is defined by using the concept of the Limiting Compression Curve (LCC) which is considered as a straight line in the bi-logarithmic space defined by \(\ln e - \ln p^{\prime }\) following [40] and is active under constant stress ratios and close to the LCC.

The incremental relationship between the effective stress, \({{\varvec{\upsigma}}}^{\mathrm{^{\prime}}}\), strain \({\varvec{\upvarepsilon}}\), and \(\xi \) is written as [23]

$$ d{{\varvec{\upsigma}}}^{\prime } = {\mathbf{D}}^{ep} d{{\varvec{\upvarepsilon}}} + {\mathbf{S}}^{ep} d\xi $$
(2)

where \({\mathbf{D}}^{ep}\) is the elastoplastic matrix describing the relationship between stress and strain, and \({\mathbf{S}}^{ep}\) is the elastoplastic matrix that relates the rate of change in the effective stress to the bonding variable. It is important to note that upon reaching the state of saturation, the Bishop’s effective stress will smoothly converge to the Terzaghi’s effective stress. In such a condition, key features of MUD including the kinematic hardening rule and dilatancy will degenerate to those used in the “SANISAND” family of models proposed by Dafalias and coworkers (e.g., [11, 41]). Aspects of the model formulations such as the definitions of \({\mathbf{D}}^{ep}\) and \({\mathbf{S}}^{ep}\) as well as dilatancy and the plastic multiplier, \(\dot{\lambda }\) are presented in Appendix A.

2.2 Stress overshooting

The kinematic hardening law and the definition of the plastic modulus are defined in this section to explain why stress overshooting occurs in the model. Similar to many multisurface soil models that are developed for modelling cyclic and monotonic behaviour of soils, in MUD, the plastic modulus is reset to infinity at the initiation of a new stress reversal. Such a resetting mechanism, which is based on the approach proposed in [11] (to be discussed in this section), results in stiff and pseudo-elastic behaviour immediately after the start of a new loading direction. When trivial changes in the loading direction happen (e.g., due to numerical oscillations rather than a true change in the loading), the resulting changes in the plastic modulus can be drastic and cause an unrealistic discontinuity in the stress–strain path if a tiny reversal event is followed by reloading. In this situation, significant overestimation (or underestimation) of the predicted stress values and early termination of numerical analyses can occur. Therefore, for a robust performance of the model in problems prone to oscillatory stresses, such as dynamic contact with multiphase soils, proper treatment of the issue is needed with particular attention to improving the hardening law and the definition of the plastic modulus as shown in [15].

In this section, we will discuss the approach of resetting the plastic modulus in MUD at the initiation of a load reversal and show the numerical issues that can arise as a result of using this approach. To this end, we employ Voigt notation to describe the model in multiaxial space. We define the stress ratio vector as follows

$$ {{\varvec{\upeta}}}_{\sigma } = {\mathbf{s}}/p^{\prime } $$
(3)

where \(p^{\prime }\) is the mean effective stress and \({\mathbf{s}} \) is the vector of deviatoric stress defined by \({\mathbf{s}} = {{\varvec{\upsigma}}}^{\prime } - p^{\prime } {\mathbf{m}}\) with \({{\varvec{\upsigma}}}^{\prime }\) being the effective stress vector and \( {\mathbf{m}}^{T} = \left\{ {\begin{array}{*{20}l} 1 \hfill & 1 \hfill & 1 \hfill & 0 \hfill & 0 \hfill & 0 \hfill \\ \end{array} } \right\} \).

We consider that the critical state ratio, \(M\) can generally vary between its values obtained in triaxial compression and extension. To formulate the changes, a Lode angle, \(\theta\), is defined in the direction of \({{\varvec{\upeta}}}_{{\varvec{\sigma}}} - {{\varvec{\upalpha}}}_{{\varvec{k}}}\) (with \({{\varvec{\upalpha}}}_{k}\) as the kinematic hardening vector). We use the equation proposed in [42] as follows

$$ M = M_{c} \left( {\frac{{2\alpha^{\prime 4} }}{{1 + \alpha^{\prime 4} - \left( {1 - \alpha^{\prime 4} } \right)\cos 3\theta }}} \right)^{1/4} $$
(4)

where \(\alpha^{\prime } = \frac{{M_{e} }}{{M_{c} }}\) (with \({M}_{e}\) and \({M}_{c}\) respectively denoting the values of \(M\) in triaxial extension and compression tests). Also, we define \(\mathbf{n}\) as follows

$$ {\mathbf{n}} = \frac{{\left( {{{\varvec{\upeta}}}_{\sigma } - {{\varvec{\upalpha}}}_{k} } \right)}}{{\sqrt {\left( {{{\varvec{\upeta}}}_{\sigma } - {{\varvec{\upalpha}}}_{k} } \right)^{T} \left( {{{\varvec{\upeta}}}_{\sigma } - {{\varvec{\upalpha}}}_{k} } \right)} }} $$
(5)

Based on this definition, \(\mathrm{cos}3\theta =\sqrt{6} \left({{n}_{xx}}^{3}+{{n}_{yy}}^{3}+{{n}_{zz}}^{3}\right)\) where the terms \({n}_{\alpha }(\alpha =\mathrm{x}x,yy,zz)\) representing the first three components of vector \(\mathbf{n}\).

Also, we define \({{\varvec{\upalpha}}}^{\beta }\) as the multiaxial counterpart of a given triaxial quantity \({\alpha }^{\beta }\) as follows \({{\varvec{\upalpha}}}^{\beta }=\sqrt{\frac{2}{3}} {\alpha }^{\beta }\mathbf{n}\). Given the foregoing descriptions, and following [11], in MUD, the kinematic hardening vector, \({{\varvec{\upalpha}}}_{k}\) can evolve as follows

$$ d{{\varvec{\upalpha}}}_{k} = \frac{2}{3}h \left( {{{\varvec{\upalpha}}}^{b} - {{\varvec{\upeta}}}_{\sigma } } \right) $$
(6)

where \({{\varvec{\upalpha}}}^{b}=\sqrt{\frac{2}{3}} {\alpha }^{b}\mathbf{n}\) and \({\alpha }^{b}\) (or the triaxial counterpart of \({{\varvec{\upalpha}}}^{b}\)) connects the hardening law to the state parameter, \(\psi \) [36], as follows

$$ \alpha^{b} = M\exp \left( {\left\langle { - n^{b} \psi } \right\rangle } \right) - m_{iso} $$
(7)

where \({m}_{iso}\) is a small positive quantity (\(\approx 0.05{M}_{c}\) following [43]) and \({n}^{b}\) is a material parameter and \(\langle \rangle \) denotes the MacCauley brackets. The parameter \(h\) in Eq. (6) is defined by

$$ h = h_{0} G_{0} \left( {1 - c_{h} e} \right)\left( {\frac{{p^{\prime } }}{{p_{atm} }}} \right)^{{ - \frac{1}{2}}} { }\frac{1}{{\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}}}} $$
(8)

where \({p}_{atm}\) is the atmospheric pressure, and \({h}_{0}\) is a material parameter, and \({c}_{h}\) regulates the contribution of the void ratio, \(e\) in the hardening law. The value of \({{\varvec{\upalpha}}}_{k}\) upon the initiation of a load reversal will be stored in \({{\varvec{\upalpha}}}_{in}\) which hereafter is referred to as the memory of load reversal.

The rule for updating is as follows. If upon the initiation of loading step\(i+1\), we get \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}} < 0\), then \({{\varvec{\upalpha}}}_{in}^{{\left( {i + 1} \right)}}\) must be updated according to

$${{\varvec{\upalpha}}}_{in}^{(i+1)}={{{\varvec{\upalpha}}}_{k}}^{(i)}$$
(9)

where the superscript \((i)\) denotes loading step \(i\). For the cases where the stress ratio changes (for whi the kinematic hardening is used), the plastic modulus, \({K}_{p}\) can be described by

$$ K_{p} = \frac{2}{3}p^{\prime } h \left( {{{\varvec{\upalpha}}}^{b} - {{\varvec{\upeta}}}_{\sigma } } \right)^{T} {\mathbf{n}} $$
(10)

Equations (8) to (10) indicate how overshooting may be triggered during numerical oscillations. From these equations, it can be inferred that if numerical oscillations are interpreted as true stress reversals, we will get \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}} = 0\) which results in \({K}_{p}\) approaching infinity, leading to a potential for a discontinuity in the stress–strain path.

An example of stress overshooting imposed by numerical oscillations is shown in Fig. 1. An isotropically consolidated sample of saturated Toyoura sand with the initial mean effective stress of 100 kPa and void ratio of 0.735 was sheared under undrained and triaxial conditions. The experimental data was reported in [44] and the test was simulated by using strain increments of magnitude 0.00001. The parameters of the mechanical model were taken from [23] and are summarised in Appendix B. It is also notable that the adaptive explicit stress integration scheme developed in [23] was used in this simulation, and the stress integration tolerance was set to \({10}^{-4}\) in this example.

Fig. 1
figure 1

Induced oscillation and the resulting overshooting in the model together with the performance of the repositioning scheme proposed in [15]

The grey dotted line shows the stress–strain path if no oscillation is induced in the analysis. Note that the \(q\) axis represents the deviatoric stress in this graph. The green dashed line shows the consequence of inducing a small oscillation in the stress–strain path if no treatment is applied. This path is simulated by applying a numerical oscillation in the form of a small load reversal event that commences upon reaching an axial strain of 0.08. The reversal step is simulated by applying an axial strain increment of -0.00017. It is seen that such a small increment could result in a drastic change in the predicted deviatoric stress because a stiffer plastic modulus is adopted in the subsequent reloading step.

The curves in Fig. 2 demonstrate the evolutions of the term \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}}\) during the simulations of this test and a test with no induced oscillation. The graph shows discontinuities in the predicted values of \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}}\) near the point of reversal and during the subsequent reloading path after the reversal. When the induced reversal occurs, initially we obtain \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}} < 0\). However, since negative values are not acceptable, \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}}\) will be set to zero following Eq. (9), leading to a very large value of plastic modulus per Eqs. (8) and (10) and the resulting discontinuities in the stress–strain path seen in Fig. 1.

Fig. 2
figure 2

The evolution of (αk − αin)T n in the simulation with no overshooting treatment

On the same graph, the performance of a remedy for the stress overshooting effect is demonstrated. This remedy follows the proposed method in [15] by defining a “threshold” for the equivalent deviatoric plastic strain during a loading process, \({\overline{\varepsilon }}_{q}^{p}\). According to this method, \({{\varvec{\upalpha}}}_{in}\) is updated as follows:

$$ {{\varvec{\upalpha}}}_{in}^{{\left( {i + 1} \right)}} = {{\varvec{\upalpha}}}_{k}^{\left( i \right)} + m_{q} \left( {{{\varvec{\upalpha}}}_{in}^{r} - {{\varvec{\upalpha}}}_{k}^{\left( i \right)} } \right) $$
(11)

where \({{\varvec{\upalpha}}}_{in}^{r}\) represented the value of αin that is stored in the previous loading step (i.e., step \((i-1)\)). Also, the weighting coefficient \({m}_{q}\) is computed according to:

$$ m_{q} = \left\langle {1 - \left( {\frac{{\sqrt {\frac{2}{3}{\mathbf{e}}_{q}^{{p\left( i \right)T}} {\mathbf{e}}_{q}^{{p\left( i \right)}} } }}{{\bar{\varepsilon }_{q}^{p} }}} \right)} \right\rangle $$
(12)

where \(j\) is a parameter that is set to a default value of 1 [15] and \({\mathbf{e}}_{q}^{p}\) is the deviatoric plastic strain vector during the load reversal in step (\(i\)) of the analysis. It should be noted that, compared with the updating rule outlined in Eq. (9), the term \({m}_{q}\) may be viewed as a repositioning term where the memory of the load reversal, \({{\varvec{\upalpha}}}_{in}^{{}}\), is repositioned from the position \({{\varvec{\upalpha}}}_{k}^{\left( i \right)}\) according to Eq. (9) to \({{\varvec{\upalpha}}}_{k}^{\left( i \right)} + m_{q} \left( {{{\varvec{\upalpha}}}_{in}^{r} - {{\varvec{\upalpha}}}_{k}^{\left( i \right)} } \right)\) to mitigate the stress overshooting problem. It may also be noted that if the developed deviatoric plastic strain during the load reversal is way below the threshold,\({m}_{q}\to 1\), leading to\({{\varvec{\upalpha}}}_{in}^{(i+1)}\to {{\varvec{\upalpha}}}_{in}^{r}\). In other words, if the unloading event is trivial, it will not significantly affect the memory of the load reversal and the plastic modulus in the subsequent reloading process in step (\(i + 1\)). Nonetheless, in unloading events where \(m_{q}\) approaches zero, the repositioning scheme will degenerate to the updating rule outlined in Eq. (9), resulting in an infinite plastic modulus at the start of the reloading process in step (\(i + 1\)). This approach requires storing \({{\varvec{\upalpha}}}_{in}^{r}\), which is a vector, in addition to the kinematic hardening vector at the instant of stress reversal.

A robust integration scheme is developed to accommodate all the repositioning strategies discussed in this study in an explicit integration scheme with automatic error control and substepping. To this end, we have modified the integration scheme proposed in [23] for MUD. This approach is an extension of the explicit integration scheme in [45] to fit in with the changes induced by the presence of matric suction as a strain-like quantity in the model formulations and the absence of a purely elastic region in the model.

The integration scheme divides the strain increment into several substeps. In each sub-step initiated at a pseudo-time of \({\tilde{\text{t}}}\), with \(0 \le {\tilde{\text{t}}} \le 1\), the integration error is evaluated using the difference between a second-order accurate modified Euler solution and a first-order accurate Euler solution. A prescribed stress integration tolerance denoted by \({\text{STOL}}\) is used to control the magnitude of the integration error. The following algorithms describe the process of the development of a stress integration scheme that includes the repositioning strategy proposed in [15]. The developed integration scheme also presents a refined error calculation to accommodate the needed calculation of the plastic deviatoric strain during reversal steps.

An important part of the algorithm is a state variable termed “Lstepcount”. This state variable is updated each time the load is reversed. At the start of the analysis, it possesses a value of zero and is updated according to the following mechanism. Upon the initiation of load reversal, which is identified by checking if \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}} < 0\), Lstepcount needs to be updated to Lstepcount + 1. If Lstepcount is an odd number, it will be viewed similar to step (i) of the load sequence discussed in Eq. (12). In such steps, it is essential to store \({\mathbf{e}}_{q}^{p}\) per Eq. (12). However, a better strategy is to store \({\varepsilon }_{q}^{p}=\sqrt{\frac{2}{3}{{\mathbf{e}}_{q}^{p}}^{T}{\mathbf{e}}_{q}^{p}}\) instead, since \(\varepsilon_{q}^{p}\) is a scaler quantity requiring smaller storage, and will be directly used in Eq. (12). If Lstepcount is an even number, the algorithm will perform repositioning treatments similar to that outlined in Eq. (12) for step (i + 1). The following sub-algorithm (Algorithm 1) is proposed for the foregoing updating mechanism.

By using this sub-algorithm, the whole integration scheme using the substepping technique is presented in Algorithm 2. In this algorithm \({\varvec{\upvarepsilon}}\) and \(\mathbf{z}\) represent strain and fabric vectors, respectively and \({\varepsilon }_{v}^{p}\) denotes the volumetric plastic strain. It should be noted that the definitions of \({\overline{\overline{\mathbf{D}}}}^{ep}\), \({\overline{\overline{\mathbf{S}}}}^{ep}\), and \(\mathcal{A}({\mathbf{z}}^{\widetilde{t}})\) that are used in the algorithm are given in Appendix A.

figure a
figure b

The repositioning scheme proposed in [15] will effectively prevent overshooting in many cases where after the update of \({{\varvec{\upalpha}}}_{in}^{1}\) using Algorithm 1, we get \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}} > 0\), a necessity to effectively prevent drastic change of the plastic modulus if oscillation occurs. Nonetheless, this algorithm cannot generally guarantee that after repositioning, we obtain \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}} > 0\) as highlighted in [15].

More recently, in [17] this problem was addressed by defining an additional criterion to decide if a load reversal is “formal” or “informal”. In the latter, \({{\varvec{\upalpha}}}_{in}^{1}\) will experience no update. All reversals are initially assumed informal unless proven otherwise according to the following criterion. If the difference between the accumulated stress ratio and \({{\varvec{\upalpha}}}_{in}^{1}\) is larger than a prescribed tolerance, the reversal is considered formal and repositioning will be performed according to Eq. (11). In this study, we use a different approach that, unlike the scheme proposed in [17], does not require an additional check of reversal events and can effectively address the limitation of the repositioning scheme proposed in [15].

Before presenting our approach to solving the overshooting problem, it should be noted that if after repositioning we get \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}} > 0\), the repositioning scheme must be abandoned and the model will degenerate to Eq. (9). In this regard, Algorithm 1 needs to be modified to Algorithm 3.

figure c

Having explained the problem with the previous repositioning scheme, we propose a new repositioning approach that guarantees \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}} > 0\) after the repositioning process, a potential cause of the ineffectiveness of the scheme outlined in Eq. (11). To this end, by defining \({\mathcal{J}} = \left( {\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}}} \right)^{1}\), we assume

$$ {\mathcal{J}}_{1}^{\left( i \right)} = {\mathcal{J}}^{r} m_{q} $$
(16)

where \({\mathcal{J}}^{r}\) is a state variable that stores the last positive value of \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}}\) before the current loading process is reversed. In Eq. (16), if a true loading event occurs (i.e., \({\varepsilon }_{q}^{p}\ge {\overline{\varepsilon }}_{q}^{p}\)), \({m}_{q}\) will be zero, leading to plastic modulus approaching infinity and a pseudo-elastic response similar to the original mechanism in MUD. However, for trivial load reversals (e.g., numerical oscillations), the remedy will define \({\mathcal{J}}_{1}^{(i)}\) as a continuous function of \({\mathcal{J}}^{r}\), preventing \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}} = 0\) and the resulting drastic change of the plastic modulus.

After some manipulations of Eq. (16), we can rewrite the rule for updating the reversal stress memory as follows

$$ \alpha _{{in}}^{{(i)}} = \alpha _{k}^{{(i)}} - \mathcal{J}^{r} \left\langle {1 - \left( {\frac{{\varepsilon _{q}^{p} }}{{\bar{\varepsilon }_{q}^{p} }}} \right)^{j} } \right\rangle {\mathbf{n}}^{{\left( i \right)}} $$
(17)

where the term \( \left( { -{\mathcal{J}}^{r} \left\langle {1 - \left( {\frac{{\varepsilon _{q}^{p} }}{{\bar{\varepsilon }_{q}^{p} }}} \right)^{j} } \right\rangle {\mathbf{n}}^{{\left( i \right)}} } \right) \) can be considered as the repositioning term in this equation. Note that since \({\mathcal{J}}^{r}\) is always positive for trivial load reversals (e.g., numerical oscillations), the proposed repositioning scheme cannot lead to \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}} > 0\) after repositioning thus resolving the issue with the repositioning scheme proposed in [15] discussed previously. Algorithm 4 shows the repositioning strategy proposed in this paper.

figure d

The term \({\mathcal{J}}^{r}\) can be calculated during the stress integration scheme per Algorithm 2 by modifying step 10 of the algorithm per Algorithm 5.

Figure 1 also shows that the proposed repositioning scheme successfully prevented overshooting. A comparison of the number of failed and successful substeps in the two repositioning schemes in that example is given in Table 1. In this table, \({E}_{q}\) is obtained by the following equation

Table 1 Comparison of the number of substeps and relative errors in the two repositioning schemes
$${E}_{q}=\frac{\left|q-{q}_{ref}\right|}{\left|{q}_{ref}\right|}$$
(18)

where \({q}_{ref}\) is a reference deviatoric stress obtained from the uninterrupted stress path of the same test (i.e., the path without any oscillations) using a tight stress integration tolerance of 1E-12.

figure e

In the performed series of tests, the total number of substeps and the number of failed substeps increase as STOL increases whereas the relative error decreases. Also, while for STOL = 1E-4 the number of total substeps and the number of failed substeps are almost the same in both repositioning schemes, these numbers become consistently smaller when the proposed repositioning scheme is used with tighter values of STOL. Moreover, the relative errors are smaller in the analyses with the proposed repositioning scheme.

It may also be noted that the scheme proposed in [15] and approaches similar to this scheme, such as that suggested in [17, 19], demand storing and additional vectors such as \({{\varvec{\upalpha}}}_{in}^{r}\). However, the proposed scheme stores \({\mathcal{J}}^{r}\) which is a scalar quantity, therefore reducing the computational storage and the number of state variables in the analysis. Such a reduction in the state variables can be particularly advantageous in fully coupled problems and unsaturated soil dynamics that often require a large number of state variables due to factors such as suction, the degree of saturation, and hydraulic hysteresis [37].

Both repositioning schemes have shown promising potential to overcome stress overshooting. Nonetheless, a scenario should be mentioned where both schemes may fail to tackle the overshooting problem. It may be noted that to effectively overcome the overshooting issue, the load sequence must match that outlined in describing Eq. (11) where following loading at step (\(i-1\)), we will have a reversal at step (\(i\)) that will be followed by reloading at step (\(i+1\)) as schematically shown in Fig. 3a.

Fig. 3
figure 3

a Schematic representation of the load sequences. b Schematic representation of the load sequences if the first load reversal cannot be detected by the algorithm

Nonetheless, the load at step (\(i\)) can be too small so that the reversal of loads in transition from step (\(i-1\)) to (\(i\)) cannot be detected by the algorithm (i.e., \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}} > 0\)) which (among other factors) can be due to an inappropriate combination of the step size and the stress integration tolerance. However, if the algorithm detects the occurrence of reversal in transition between the load in step (\(i\)) and the subsequent reloading at step (\(i+1\)) in Fig. 3a, the algorithm will consider step (\(i\)) as the continuation of the loading process initiated at step (\(i-1\)). The consequences of such an event are outlined in Fig. 3b. It can be seen that the loading step (\(i+1\)) in Fig. 3a is now wrongly deemed as a reversal with the likely consequence of \({\varepsilon }_{q}^{p}\) being much greater than\({\overline{\varepsilon }}_{q}^{p}\), leading to a potential for ineffectiveness of both schemes in handling the overshooting issue.

To the best of the authors’ knowledge, this issue has not been highlighted in any other works on repositioning schemes and it appears that there is no remedy to deal with this issue. Nonetheless, the occurrence of this issue can be considered rare and can be to some extent managed by selecting a different combination of STOL and step sizes.

It should be noted that when the soil is in an unsaturated state, in addition to oscillations in the displacement fields which result in stress overshooting (e.g., similar to that shown in Fig. 1), oscillations in the suction field can also create a potential for overshooting in the model. A key feature of MUD is the establishment of a direct relationship between the changes in the kinematic hardening tensor and stress ratio tensor through defining a linear loading surface [24]. That is the term \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T}\) can be a surrogate for the total stress ratio change during a loading event (before it is reversed) \(\Delta {{\varvec{\upeta}}}_{\sigma }\) while the term \(\mathbf{n}\) can be a surrogate for the direction of the stress ratio increment \(\frac{\delta {{\varvec{\upeta}}}_{\sigma }}{\left|{{\varvec{\upeta}}}_{\sigma }\right|}\) in a given time step of the analysis. In modelling triaxial loading of isotopically consolidated granular soils, αin = 0 and as the loading proceeds, we obtain \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}} > 0\), denoting that \(\Delta {\eta }_{\sigma }>0\) and \(\delta {\eta }_{\sigma }>0\). However, when in a time step of the analysis, we obtain \(\delta {\eta }_{\sigma }<0\), the memory parameter \({\alpha }_{in}\) will be updated as discussed earlier. Unlike saturated soils, \(\delta {\eta }_{\sigma }\) can change in response to oscillations in the degree of saturation and/or suction (since the mean effective stress can be affected by these two parameters). This dependency can also create a potential for overshooting if the oscillations in suction fields lead to \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}} < 0\) through a change \(\delta {\eta }_{\sigma }\) as shown in the following example.

An isotopically consolidated unsaturated soil with an initial void ratio of 0.735, a suction value of 7.68 kPa, and a degree of saturation of 0.85 is first sheared in a drained condition. The sample has an initial mean net stress of 1 kPa to mimic the stress condition that can occur at integration points that are located near a surface with negligible overburden pressure. After shearing the sample by applying an axial strain of 0.01 over 1000 steps, the sample is unloaded by applying an axial strain of −0.01 over 1000 steps. During the unloading process, we imposed a trivial oscillation in the suction with a magnitude of 4% of the prescribed suction at step 1040 of the analysis. This amount was sufficient to lead to \(\left( {{{\varvec{\upalpha}}}_{k} - {{\varvec{\upalpha}}}_{in} } \right)^{T} {\mathbf{n}} < 0\) with the consequence that is shown in Fig. 4.

Fig. 4
figure 4

Performance of the treatments in handling a suction oscillation that results in stress overshooting

The results in Fig. 4 that the induced oscillation leads to a discontinuity in the stress–strain path when no overshooting treatment is used. However, both repositioning schemes perform reasonably well in dealing with this overshooting issue.

3 Finite element analysis

In this section, we perform a more rigorous comparison of the two schemes by solving highly oscillatory contact-impact problems involving multiphase soil and compare the stability and speed of numerical solutions when the two schemes are used. The researchers in [26, 46] were among the pioneers who extended Biot’s theory of dynamic consolidation and developed a “fully coupled model” to simulate the response of multiphase soils within the finite element framework by assuming immiscible flows and an isothermal environment. While the fundamental assumption of having immiscible flows in soils has remained the same in the majority of the subsequent modifications to this framework, features such as the ability to simulate hydraulic hysteresis [7, 37], large deformations [47, 48], temperature changes [49, 50], the effect of volume changes on SWRC [30, 51], and stress-induced anisotropy [24] have been among the improvements applied to this framework. More recently, in [52] the frictionless mortar-type discretisation [53, 54] was extended to develop a fully coupled framework for simulating contact with multiphase soils. This approach is used in this study and will be briefly introduced in the following section.

In the mortar algorithm, a segment-to-segment discretisation is formulated based on the projection of the segments on the surface of one of the interacting bodies onto the segments of the other body. The contact and separation which are governed by the Kuhn–Tucker conditions states

$$ t_{n} \le 0,\quad g_{n} \ge 0,\, t_{n} .g_{n} = 0 $$
(19)

where \({t}_{n}\) is the contact stress and \({g}_{n}\) represents the normal gap function [55] used to obtain the minimum distance between two points on the surfaces of the contacting body. By using the penalty method to enforce these constraints, the additional penalty energy from the contribution of the contact segment, \(i\) (on boundary \({\Gamma }_{{C}_{i}})\), \({\Pi }^{{C}_{i}}\), to the proposed fully coupled equations can be written as

$$ {\Pi }^{{C_{i} }} = \frac{1}{2}\int\limits_{{\Gamma_{{C_{i} }} }} {\varepsilon_{c} g_{n}^{2} d\Gamma } $$
(20)

where \({\varepsilon }_{c}\) is the penalty coefficient. After linearization and the inclusion of the additional energy arising from the contact in the global governing equation of motion of unsaturated soils, the finite element discretisation of the fully coupled equations can be written as [52]

$$ {\text{M}}_{{\mathbf{u}}} \ddot{{\mathbf{U}}} + {\mathbf{C}}\dot{{\mathbf{U}}} + {\mathbf{KU}} + \bigcup\limits_{{i = 1}}^{{n_{s} }} {{\mathbf{K}}_{{NC_{i} }} } - {\mathbf{Q}}_{{\mathbf{w}}} {\mathbf{P}}_{{\mathbf{w}}} - {\mathbf{Q}}_{{\mathbf{c}}}^{*} {\mathbf{P}}_{{\mathbf{c}}} = {\mathbf{F}}_{{\mathbf{u}}} + \bigcup\limits_{{i = 1}}^{{n_{s} }} {{\mathbf{F}}_{{NC_{i} }} } $$
(21)
$$ {\mathbf{M}}_{{\mathbf{w}}} \ddot{{\mathbf{U}}} + {\mathbf{Q}}_{{\mathbf{w}}}^{T} \dot{{\mathbf{U}}} + {\mathbf{C}}_{{{\mathbf{ww}}}} \dot{{\mathbf{P}}}_{{\mathbf{w}}} + {\mathbf{C}}_{{{\mathbf{wc}}}} \dot{{\mathbf{P}}}_{{\mathbf{c}}} + {\mathbf{H}}_{{{\mathbf{ww}}}} {\mathbf{P}}_{{\mathbf{w}}} + {\mathbf{H}}_{{{\mathbf{wc}}}} {\mathbf{P}}_{{\mathbf{c}}} = {\mathbf{F}}_{{\mathbf{w}}} $$
(22)
$$ {\mathbf{M}}_{{\mathbf{c}}} \ddot{{\mathbf{U}}} + {\mathbf{R}}_{{\mathbf{c}}}^{{\mathbf{T}}} \dot{{\mathbf{U}}} + {\mathbf{C}}_{{{\mathbf{cw}}}} \dot{{\mathbf{P}}}_{{\mathbf{w}}} + {\mathbf{C}}_{{{\mathbf{cc}}}} \dot{{\mathbf{P}}}_{{\mathbf{w}}} + {\mathbf{H}}_{{{\mathbf{wc}}}}^{T} {\mathbf{P}}_{{\mathbf{w}}} + {\mathbf{H}}_{{{\mathbf{cc}}}} {\mathbf{P}}_{{\mathbf{c}}} = {\mathbf{F}}_{{\mathbf{c}}} $$
(23)

where \({n}_{s}\) is the number of contact segments. The symbols F, M, Q, H, and, C in the above equations refer to the force vectors, and the mass, coupling, flow, and damping matrices. Furthermore, the symbols U,\({\mathbf{P}}_{\mathbf{w}}\) and \({\mathbf{P}}_{\mathbf{c}}\) represent the nodal displacement, pore water pressure and suction which are taken as the unknown variables in developing the presented finite element solution. In addition, the superimposed dot denotes the time derivative of a variable. All matrices and force vectors (using the same notations) are defined in Appendix A. The definitions of \({\mathbf{K}}_{N{C}_{i}}\) and \({\mathbf{F}}_{N{C}_{i}}\) can be found in the work presented in [52]. The generalised-α method is used for time integration of the global equations of motion [4]. In all the following examples the tolerance for the iterative scheme based on the Newton–Raphson method is set to \({10}^{-3}\). Furthermore, the penalty coefficient is set to \({10}^{7}\) kN/\({\mathrm{m}}^{3}\) when obtaining the numerical results of the analyses presented here.

3.1 Finite element results

The problem investigated here considers the response of unsaturated soil to dynamic indentation by a rigid impervious circular platen with a diameter of 300 mm by assuming small deformations. On the top of the rigid plate, we have applied a triangular impact load as shown in Fig. 5. The load has a peak of 6.5 kN and a duration of 0.028 s.

Fig. 5
figure 5

Applied load and a schematic representation of the model

As shown in Fig. 5, we idealised this problem as an axisymmetric body where a 2 m by 2 m domain of unsaturated soil is discretised by 900 nodes and 410 6-noded quadratic elements for displacement that are coupled with two 3-noded elements for pore water pressure and suction [4]. The side boundaries of the mesh are restrained against horizontal displacements whereas vertical displacements are not allowed at the bottom boundary. Drainage is only possible from the portion of the top boundary that is not in contact with the impervious plate. Unless stated otherwise, the initial void ratio that is assigned to the soil domain is 0.7, the initial suction is 10 kPa and the at-rest earth pressure coefficient is set to 0.4. Initially, we establish geostatic stress and then, we initiate dynamic of the plate resting on the soil. The impact process is simulated by using 1333 time steps of the size of 0.00003 s. The SWRC is shown in Fig. 6a (with \({p}_{c}^{*}\) as the normalized suction defined in Eq. (68) in Appendix B). All the analyses were performed using the values of the material parameters that are summarised in Appendix B.

Fig. 6
figure 6

Model predictions at the contact interface. a Displacement b SWRC c Pore water pressure and suction d Degree of saturation and bonding variable

Displacement, pore water pressure, suction, bonding variables, and the degree of saturation at the centre of the interface of the contact between the impervious plate and the unsaturated are also shown in Fig. 6. These results are obtained from simulations with no stress overshooting treatment. The results indicate that during the loading stage (i.e., the first 0.014 s of the analysis), pore water pressure and the degree of saturation increase whereas suction decreases at the monitoring point. The bonding variable has an inverse relationship with the degree of saturation per Eq. (1), therefore, it initially decreases. Nonetheless, upon the initiation of unloading, the aforementioned trend is reversed. The pore water pressure and suction results show strong oscillations that are initiated in the final stage of the impact. Overall, given the strong oscillations observed, this problem provides a good example for studying the performance of the discussed schemes for correcting for stress overshooting.

We solved the same contact-impact problem using the two repositioning schemes discussed earlier. The predicted displacements on the contact interface are shown in Fig. 7. It may be noted that in the absence of significant oscillations, there is very good agreement between the results obtained from the analyses with and without using the repositioning schemes. Also, when true unloading occurs (due to reversal of the applied load at t = 0.014 s), all the analyses are in perfect agreement as shown in Fig. 7. However, when oscillations become more pronounced, differences between the predicted displacements can be observed.

Fig. 7
figure 7

Displacement at the centre of the impact

We conducted 45 analyses to explore the performance of the proposed models for a diverse range of initial suction and void ratio. The first set of analyses was performed by selecting the initial suction values of 0, 2, 5, 8, 10, 15, 20, 40, 60, 100, 200, 350, and 500 kPa (corresponding to initial degrees of saturation of \(\approx \) 1.0, 0.986, 0.926, 0.851, 0.805, 0.714, 0.651, 0.532, 0.483, 0.435, 0.387, 0.358, and 0.343) while keeping all other parameters the same as in the previous example. Three cases were studied which are the model with no overshooting treatment, the model with the overshooting treatment proposed in [15], and the model with the overshooting treatment in this paper. We compared the CPU time and the number of iterations in the global generalised-α solver based on Newton–Raphson’s method. In the second series of tests, we selected initial void ratios of 0.6, and 0.9.

It should be noted that the discussed repositioning schemes generally have competing effects on the speed of the stress integration and the speed of the generalised-alpha solver. Both repositioning schemes add complexities as well as storage and computational costs to the integration scheme as outlined in Algorithm 1 to Algorithm 5. Nonetheless, if the proposed schemes can effectively mitigate the stress overshooting problem, the storage and computational costs can be compensated by the improvement in the stability of the solution, fewer iterations and a reduced substepping frequency, and overall enhancement of the speed of the analysis. Table 2 summarises the information on the relative CPU time and the number of iterations in the two series of analyses with and without overshooting treatment. The CPU of the system that is used for these analyses is Intel(R) Core(TM) i7-3630QM and the system is equipped with 16 GB of RAM. The operating system is Windows 10, 64-bit.

Table 2 Information on the efficiency of the analyses with and without the overshooting treatments in analyses with the initial void ratio of 0.7

Table 2 and Table 3 show that in the majority of the analyses, the use of the repositioning schemes resulted in a decrease in the CPU time and iterations. However, the results show a clear dependency on the analysis condition. The unsaturated cases generally exhibit higher CPU time and iterations closer to saturation and as the initial suction increases, the analyses were performed faster and with fewer iterations. Figure 8 highlights how some of the key observations in these coupled problems when the initial suction changes. It should be noted that all the results presented in this figure were obtained from the analysis with no overshooting treatment. We have defined \(r_{u} = \frac{{\Delta p_{w} }}{{\sigma_{yy0}^{\prime } }}\) (i.e., the excess pore water pressure normalised by the initial vertical effective stress, \(\sigma_{yy0}^{\prime }\)) and showed its evolutions at 2 cm below the centre of impact in Fig. 8.a in the analyses with the initial suction values of 2, 5, 60, and 500 kPa. The graph shows that \({r}_{u}\) can significantly reduce when the initial suction increases. Such a reduction in \({r}_{u}\) is due to smaller excess pore water pressure when the soil is in dryer states and higher initial effective stress (\(\approx \) − 2.0, − 4.6, − 29.0 and − 171.5 kPa corresponding to suction values of 2, 5, 60, and 500 kPa) when suction increases. The changes in volumetric strain, \({\varepsilon }_{v}\) with depth beneath the centre of impact when the peak of the load is applied (at 0.014 s) is shown in Fig. 8.b. The observed trend in the graph resembles the regime of volume changes below the centre of a rigid cylinder in contact with unsaturated soils analysed in [52] where far from saturation, the volume change beneath the centre of impact is purely compressive. Nonetheless, as the initial suction decreases, the formation of a dilative zone can be identified in analysis with initial suction of 2 kPa. Figure 8.c shows the changes in the bonding variable normalised by its initial value, \({\xi }_{0}\) (\(\approx \) 0.014, 0.074, 0.543, 0.8 corresponding to suction values of 2, 5, 60, and 500 kPa) with depth. It is seen that at the chosen time step, overall, the bonding variable decreases because the saturation degree increases and suction decreases. Nonetheless, in the analyses with initial suctions of 5 and 2 kPa, a zone can be identified where the bonding variable increases.

Table 3 Information on the efficiency of the analyses with and without the overshooting treatments in analyses with initial suction of 10 kPa and void ratios of 0.6 and 0.9
Fig. 8
figure 8

a \(\frac{{\Delta p_{w} }}{{\sigma_{yy0}^{^{\prime}} }}\) versus time b volumetric strain, \({\varepsilon }_{v}\) with depth c \(\frac{\Delta \xi }{{\xi }_{0}}\) with depth

In four instances (e = 0.7 with suction values of 8, 15, and 100 kPa in Table 2, and e = 0.6 with suction values of 10 in Table 3), the use of the repositioning scheme resulted in the successful completion of the analyses that failed when no repositioning scheme was used. In one instance (initial suction = 100 kPa in Table 2), the use of the proposed repositioning scheme resulted in the successful completion of the analysis, a result that could not be achieved when no overshooting treatment or the repositioning scheme proposed in [15] was used. Figure 9 compares the evolution of the vertical effective stress at 2 cm below the centre of impact obtained from the analyses with the initial suction value of 100 kPa in Table 2 with the two repositioning schemes. The point where the analysis with the repositioning scheme proposed in [15] failed is shown in the graph. These results indicate that both analyses are in agreement before the oscillatory phase of the analyses. However, a drastic jump in the predicted vertical effective stress is seen before the termination of the analysis with the repositioning scheme proposed in [15]. Nonetheless, relatively better performance is seen in the analysis with the proposed repositioning scheme and furthermore, the analysis could be completed.

Fig. 9
figure 9

The change in the vertical effective stress at 2 cm below the centre of contact

In the final series of analyses, we investigated the performance of the proposed schemes when the penalty coefficient changes by conducting 12 additional analyses with the penalty coefficient being set to 1E5, 1E6, 5E6, and 8E6 \(kN/{m}^{3}\) and keeping other aspects of the analysis the same. The penalty coefficient represents the stiffness of a continuous spring on the contact surface where higher penalty coefficients generally yield smaller penetrations. Compared with methods such as the “Augmented Lagrangian” [56], the penalty approach has the advantage of removing the need for additional degrees of freedom in the analysis [57] which improves the speed of fully coupled analyses. However, the results can exhibit sensitivity to the selected penalty parameter [52, 57]. It should be noted that small penalty coefficients can generally lead to violation of the contact constraints in Eq. (19) as penetration cannot be effectively prevented. To fully enforce these constraints, the penalty coefficient should ideally approach infinity, however, due to numerical issues such as strong oscillations and ill-conditioning, the penalty coefficient cannot be too large. Therefore, often an optimum penalty coefficient can be selected that is large enough to effectively prevent penetration of the surfaces in contact but not too large that it can cause early termination of the analysis. As noted in [57] a general applicable mathematical approach for finding the optimum penalty coefficient cannot be developed, as finding such a penalty coefficient generally depends on the characteristics of the problem such as the material model, parameters, and boundary constraints. Therefore, trial and error may be needed in nonlinear contact problems to obtain the most suitable penalty coefficient. Figure 10.a shows the predicted displacement at the surface in analyses with various penalty coefficients chosen for study. Under a constant dynamic force, smaller penalty coefficients lead to higher peaks of displacement during the impact. Also, Fig. 11 indicates that penetration is more pronounced when smaller penalty coefficients are selected and for the case with the highest penalty coefficient (1E7 \(kN/{m}^{3}\)) no noticeable penetration can be observed. The pore water pressure changes at the centre of impact in the analyses with the lowest and highest penalty coefficients are compared in Fig. 10.b. The results indicate that when the penalty coefficient is low, numerical oscillations are small, however, numerical oscillations can significantly increase when a penalty coefficient of 1E7 \(kN/{m}^{3}\) is selected. Overall, effective prevention of penetration and increasing the accuracy of the predictions by selecting a high penalty coefficient will add numerical oscillations and challenge the stress integration scheme and the constitutive model (e.g., because of the potential for stress overshooting).

Fig. 10
figure 10

The effect of penalty coefficient on a Displacement b Pore water pressure at the centre of impact

Fig. 11
figure 11

Penetration at t = 0.014 s in the analysis with a penalty coefficient of a 1E5 b 1E6 c 1E7

Table 4 summarises the information on the efficiency of the analyses with and without the repositioning schemes when different penalty coefficients are used. As explained earlier, due to stronger oscillations, overall, CPU time and iterations increase when larger penalty coefficients are used. In the analysis with the lowest penalty coefficient, no changes in the iterations were observed. Nonetheless, CPU time and iterations in the analyses are reduced in both repositioning schemes when higher penalty coefficients are adopted.

Table 4 Information on the efficiency of the analyses with and without the overshooting treatments in analyses with different penalty coefficients

4 Conclusions

We discussed two memory repositioning options for solving the problem of stress overshooting in a constitutive model for multiphase soils known as MUD. The first scheme was proposed in [15] and the second was proposed in this paper to resolve a highlighted numerical issue with the first repositioning scheme. Also, we presented adaptive explicit integration schemes for MUD with the two repositioning schemes. The advantages and limitations of both algorithms were highlighted by several examples. Moreover, an oscillatory dynamic contact problem was solved to compare the performance of the two schemes. It was found that both schemes can generally improve the speed of the analyses and the number of iterations, hence helping the stability of the solutions. The results showed the dependency of the performance of these schemes on the initial analysis conditions. Nonetheless, an instance was highlighted where the proposed repositioning scheme could outperform the scheme proposed in [15]. Furthermore, we showed that the hardening law has a pivotal role in solving the overshooting problem. As stated in Sect. 2.1, upon saturation, the hardening law of MUD will degenerate to that in the “SANISAND” family of models. Therefore, the proposed solutions and the integration schemes can be readily applied to saturated soil models that employ a similar hardening law. It has also been demonstrated that to achieve more accurate results, the penalty coefficient should be large enough to effectively prevent penetration of the surfaces in contact. However, larger penalty coefficients led to stronger oscillations. In such conditions, both repositioning schemes could effectively reduce the iterations and CPU time.