The study of fluid flows containing particles of different sizes (hereafter called particulate flows) is relevant to many areas of engineering and applied sciences. In this work we are concerned with particulate flows containing small to large particles. This type of flows is typical in slurry flows originated by natural hazards such as floods, tsunamis and landslides, as well as in many processes of the bio-medical and pharmaceutical industries, in the manufacturing industry and in the oil and gas industry (i.e. cuttings transport in boreholes), among other applications [1, 2, 6, 7, 13, 14, 16, 2123, 26, 47, 50, 51, 55, 61, 62].

Our interest in this work is the modelling and simulation of free surface particulate quasi-incompressible flows containing particles of different sizes using a particular class of Lagrangian FEM termed the Particle Finite Element Method (PFEM, [4, 5, 8, 11, 1720, 25, 27, 28, 35, 36, 38, 40, 4246, 52]. The PFEM treats the mesh nodes in the fluid and solid domains as particles which can freely move and even separate from the main fluid domain. A mesh connects the nodes discretizing the domain where the governing equations are solved using a stabilized FEM.

In Lagrangian analysis procedures (such as the PFEM) the motion of fluid particles is tracked during the transient solution. Hence, the convective terms vanish in the momentum equations and no numerical stabilization is needed. Another source of instability, however, remains in the numerical solution of Lagrangian flows, that due to the treatment of the incompressibility constraint which requires using a stabilized numerical method.

In this work we use a stabilized Lagrangian formulation that has excellent mass preservation features. The success of the formulation relies on the consistent derivation of a residual-based stabilized expression of the mass balance equation using the Finite Calculus (FIC) method [2933, 3739].

The lay-out of the paper is the following. In the next section we present the basic equations for conservation of linear momentum and mass for a quasi-incompressible particulate fluid in a Lagrangian framework. The treatment of the different force terms for micro, macro and large particles are explained. Next we derive the stabilized FIC form of the mass balance equation. Then, the finite element discretization using simplicial element with equal order approximation for the velocity and the pressure is presented and the relevant matrices and vectors of the discretized problem are given. Details of the implicit transient solution of the Lagrangian FEM equations for a particulate flow using a Newton-Raphson type iterative scheme are presented. The basic steps of the PFEM for solving free-surface particulate flow problems are described.

The efficiency and accuracy of the PFEM for analysis of particulate flows are verified by solving a set of free surface and confined fluid flow problems incorporating particles of small and large sizes in two (2D) and three (3D) dimensions. The problems include the study of soil erosion, landslide situations, tsunami and flood flows, soil dredging problems and particle filling of fluid containers, among others. The excellent performance of the numerical method proposed for analysis of particulate flows is highlighted.

Modelling of micro, macro and large particles

Figure 1 shows a domain containing a fluid and particles of different sizes. Particles will be termed microscopic, macroscopic and large in terms of their dimensions. Microscopic and macroscopic particles will be assumed to have a cylindrical (in 2D) or spherical (in 3D) shape. These particles are modelled as rigid objects that undergo interaction forces computed in terms of the relative distance between particles (for microscropic particles) or via the physical contact between a particle and its neighbors (for macroscopic particles), as in the standard discrete element method (DEM) [2, 16, 34].

Fig. 1
figure 1

Microscopic, macroscopic and large particles within a fluid domain

In this work microscopic and macroscopic particles are assumed to be spherical and submerged in the fluid (Fig. 2). Fluid-to-particle forces are transferred to the particles via appropriate drag and buoyancy functions. Particle-to-fluid forces have equal magnitude and opposite direction as the fluid-to-particle ones and are transferred to the fluid points as an additional body force vector in the momentum equation (Fig. 3). These equations, as well as the mass balance equations account for the percentage of particles in the fluid, similarly at it is done in standard immersed approaches for particulate flows [53, 54, 56].

Fig. 2
figure 2

a Particles of different sizes surrounding the nodes in a FEM mesh. b Representative volume for a node (in shadowed darker colour)

Fig. 3
figure 3

Immersed approach for treating the motion of physical particles in a fluid [61]

Large particles, on the other hand, can have any arbitrary shape and they can be treated as rigid or deformable bodies. In the later case, they are discretized with the standard FEM. The forces between the fluid and the particles and viceversa are computed via fluid-structure interaction (FSI) procedures [31, 60].

The following sections describe the basic governing equations for a Lagrangian particulate fluid and the computation of the forces for microscopic, macroscopic and large particles.

Basic governing equations for a Lagrangian particulate fluid [1, 22, 23, 61]

Conservation of linear momentum

$$\begin{aligned} \rho _f \frac{Dv_i}{Dt}= {\partial \sigma _{ij} \over \partial x_j} +b_i + \frac{1}{n_f} f_i^{pf}, \quad i,j=1,\cdots ,n_s \quad \hbox {in } V\nonumber \\ \end{aligned}$$

In \(V\) is the analysis domain, \(n_s\) is the number of space dimensions (\(n_s=3\) for 3D problems), \(\rho _f \) is the density of the fluid, \(v_i\) and \(b_i\) are the velocity and body force components along the \(i\)th cartesian axis, respectively, \(\sigma _{ij}\) are the fluid Cauchy stresses, \(f_i^{pf}\) are averaged particle-to-fluid interaction forces for which closure relations must be provided and \(n_f\) is the fluid volume fraction defined for each node \(j\) as

$$\begin{aligned} n_{f_j} = 1-\frac{1}{V_j}\sum \limits _{i=1}^{n_j}V_j^i \end{aligned}$$

where \(V_j\) is the volume of the representative domain associated to a fluid node \(j\), \(V_j^i\) is the volume of the \(i\)th particle belonging to \(V_j\) and \(n_j\) is the number of particles contained in \(V_j\). Note that \(n_{f_j}=1 \) for a representative fluid domain containing no particles (Fig. 2).

The fluid volume fraction \(n_f\) in Eq. (1) is a continuous function that is interpolated from the nodal values in the finite element fashion [41, 5860].

Summation of terms with repeated indices is assumed in Eq. (1) and in the following, unless otherwise specified.

Remark 1

The term \(\frac{Dv_i}{Dt}\) in Eq. (1) is the material derivative of the velocity \(v_i\). This term is typically computed in a Lagrangian framework as

$$\begin{aligned} \frac{Dv_i}{Dt} = \frac{{}^{n+1} v_i - {}^n v_i }{\Delta t} \end{aligned}$$


$$\begin{aligned} {}^{n+1} v_i:=v_i ({}^{n+1} \mathbf{x},{}^{n+1} t)\quad ,\quad {}^n v_i:=v_i ({}^n\mathbf{x},{}^n t) \end{aligned}$$

where \({}^n v_i({}^n\mathbf{x},{}^nt)\) is the velocity of the material point that has the position \({}^n\mathbf{x}\) at time \(t={}^nt\), where \(\mathbf{x}=[x_1,x_2,x_3]^T\) is the coordinates vector of a point in a fixed Cartesian system. Note that the convective term, typical of Eulerian formulations, does not appear in the definition of the material derivative [3, 9, 60].

Constitutive equations

The Cauchy stresses \(\sigma _{ij}\) in the fluid are split in the deviatoric (\(s_{ij}\)) and pressure (\(p\)) components as

$$\begin{aligned} \sigma _{ij} = s_{ij}+ p \delta _{ij} \end{aligned}$$

where \(\delta _{ij}\) is the Kronecker delta. In this work the pressure is assumed to be positive for a tension state.

The relationship between the deviatoric stresses and the strain rates has the standard form for a Newtonian fluid [9],

$$\begin{aligned} s_{ij} = 2\mu \varepsilon '_{ij} \quad \hbox {with } \varepsilon '_{ij}= \varepsilon _{ij} - {1 \over 3}\varepsilon _{v} \delta _{ij} \quad \hbox {and}\quad \varepsilon _{v} = \varepsilon _{ii} \end{aligned}$$

In Eq. (5) \(\mu \) is the viscosity, \(\varepsilon '_{ij}\) and \(\varepsilon _{v}\) are the deviatoric and volumetric strain rates, respectively. The strain rates \(\varepsilon _{ij}\) are related to the velocities by

$$\begin{aligned} \varepsilon _{ij} = {1 \over 2}\left( {\partial v_i \over \partial x_j} + {\partial v_j \over \partial x_i} \right) \end{aligned}$$

Mass conservation equation

The mass conservation equation for a particulate flow is written as

$$\begin{aligned} r_v =0 \end{aligned}$$


$$\begin{aligned} r_v:=\frac{D (n_f \rho _f)}{Dt}+n_f \rho _f \varepsilon _{v} \end{aligned}$$

Expanding the material derivative and dividing Eq. (7a) by \(n_f\) the expression of \(r_v\) can be rewritten as

$$\begin{aligned} r_v=- \frac{1}{\kappa } \frac{Dp}{Dt}+ \frac{1}{n_f} \frac{Dn_f}{Dt} +\varepsilon _{v} \end{aligned}$$

where \(\kappa = \rho _f c^2\) and \(c= - {\partial p \over \partial \rho }\) is the speed of sound in the fluid.

Remark 2

For \(n_f =1\) (i.e. no particles are contained in the fluid) the standard momentum and mass conservation equations for the fluid are recovered.

Boundary conditions

The boundary conditions at the Dirichlet (\(\varGamma _v\)) and Neumann (\(\varGamma _t\)) boundaries with \(\varGamma = \varGamma _v \cup \varGamma _t\) are

$$\begin{aligned}&v_i -v_i^p = 0 \qquad \hbox {on }\varGamma _v\end{aligned}$$
$$\begin{aligned}&\sigma _{ij}n_j -t_i^p =0 \qquad \hbox {on }\varGamma _t \quad i,j=1,\cdots ,n_s \end{aligned}$$

where \(v_i^p\) and \(t_i^p\) are the prescribed velocities and prescribed tractions on the \(\varGamma _v\) and \(\varGamma _t\) boundaries, respectively and \(n_j\) are the components of the unit normal vector to the boundary [3, 9, 60].

At a free surface the Neumann boundary conditions typically apply.

Motion of microscopic and macroscopic particles

As mentioned early, microscopic and macroscopic particles are assumed to be rigid spheres (in 3D). Their motion follows the standard law for Lagrangian particles. For the \(i\)th spherical particle

$$\begin{aligned} m_i \dot{\mathbf{u}}_i = \mathbf{F}_i\quad ,\quad J_i \dot{\mathbf{w}}_i = \mathbf{T}_i \end{aligned}$$

where \(\mathbf{u}_i\) and \(\mathbf{w}_i\) are the velocity vector and the rotation speed vector of the center of gravity of the particle, \(m_i\) and \(J_i \) are the mass and the rotational inertia of the particle, respectively and \(\mathbf{F}_i\) and \(\mathbf{T}_i\) are the vectors containing the forces and the torques acting at the gravity center of the particle [34].

The forces \(\mathbf{F}_i\) acting on the \(i\)th particle are computed as

$$\begin{aligned} \mathbf{F}_i = \mathbf{F}_i^w + \mathbf{F}_{i}^c + \mathbf{F}_i^{fp} \end{aligned}$$

\(\mathbf{F}_i^w\), \(\mathbf{F}_{i}^c\) and \(\mathbf{F}_i^{fp}\) are the forces on the particle due to self-weight, contact interactions and fluid effects. These forces are computed as follows.

Self-weight forces

$$\begin{aligned} \mathbf{F}_i^w =\rho _i \Omega _i \mathbf{g} \end{aligned}$$

where \(\rho _i\) and \(\Omega _i\) are the density and the volume of the \(i\)th particle, respectively and \(\mathbf{g}\) is the gravity acceleration vector.

Contact forces

$$\begin{aligned} \mathbf{F}_{i}^c = \sum \limits _{j=1}^{n_i} \mathbf{F}_{ij}^c \end{aligned}$$

where \(n_i\) is the number of contact interfaces for the \(i\)th particle.

$$\begin{aligned} \mathbf{F}_{ij}^c = \mathbf{F}_n^{ij} + \mathbf{F}_s^{ij} = { F}_n^{ij}n_i + \mathbf{F}_s^{ij} \end{aligned}$$

where \(\mathbf{F}_n^{ij}\) and \(\mathbf{F}_s^{ij}\) are the normal and tangential forces acting at the \(i\)th interface connecting particles \(i\) and \(j\) (Fig. 4). These forces are computed in terms of the relative motion of the interacting particles as in the standard DEM [2, 16, 34].

Fig. 4
figure 4

Interacting forces between microscopic (a) and macroscopic (b) particles. a Contact between microscopic particles. Forces between two microscopic particles act in the direction of the line connecting their radii. b Contact “a la DEM” between macroscopic particles [34]. \(\mathbf{F}_n^{ij} \!=\! K_n \mathbf{u}_n^{ij}\!+\!C_n \dot{\mathbf{u}}_n^{ij} \mathbf{u}_n^{ij},\mathbf{u}_s^{ij}\) relative displacements in the normaland \(\mathbf{F}_s^{ij} = K_s \mathbf{u}_s^{ij}\) tangential directions to a contact interface

For microscopic particles the tangential forces \(\mathbf{F}_s^{ij}\) are neglected in Eq. (15).

Fluid-to-particle forces: \(\mathbf{F}_i^{fp} = \mathbf{F}_i^d + \mathbf{F}_i^b\), where \(\mathbf{F}_i^b\) and \(\mathbf{F}_i^d\) are, respectively, the buoyancy and drag forces on the \(i\)th particle. These forces are computed as:

Buoyancy forces

$$\begin{aligned} \mathbf{F}_i^b =- \mathrm{\Omega }_i {\pmb \nabla } p \end{aligned}$$

Drag forces

$$\begin{aligned} \mathbf{F}_i^d = \mathbf{f}_i^d n_f^{-(\chi +1)} \end{aligned}$$

where \(\chi = \chi (Re)\) is a coefficient that depends on the local Reynolds number for the particle \(Re\) [1, 6, 15, 22, 23] and

$$\begin{aligned} \mathbf{f}_i^d = \frac{1}{2} \rho _f A_i C_d \Vert \mathbf{v}_{f_i} - \mathbf{v}_i\Vert (\mathbf{v}_{f_i} - \mathbf{v}_i) \end{aligned}$$

In Eq. (17) \(\mathbf{v}_{fi}\) and \(\mathbf{v}_i\) are respectively the velocity of the fluid and of the particle center, \(A_i\) is the area of the particle surface with radius \(r_i\) (\(2\pi r_i\) or \(4\pi r_i^2\) for a circle or a sphere, respectively) and \(C_d\) is a drag coefficient that depends on the particle geometry and the rugosity of its surface [22, 23].

The force term \( {f}^{pf}_i\) in the r.h.s. of the momentum equations [Eq. (1)] is computed for each particle (in vector form) as \( \mathbf{f}^{pf}=-\mathbf{f}^{fp}\) with vector \( \mathbf{f}^{fp}\) computed at each node in the fluid mesh from the drag forces \(\mathbf{F}_i^{d}\) as

$$\begin{aligned} \mathbf{f}^{fp}_j = \frac{1}{V_j} \sum \limits _{i=1}^{n_j} \mathbf{F}_i^d~~~,~~ j=1,N \end{aligned}$$

A continuum distribution of \(\mathbf{f}^{fp}\) is obtained by interpolating its nodal values over each element in the FEM fashion.

We note that the forces on the particles due to lift effects have been neglected in the present analysis. These forces can be accounted for as explained in [22].

Motion of large particles

As mentioned earlier, large particles may be considered as rigid or deformable bodies. In the first case the motion follows the rules of Eq. (11) for rigid Lagrangian particles. The contact forces at the particle surface due to the adjacent interacting particles are computed using a frictional contact interface layer between particles as in the standard PFEM (Sect. 10.2).

The fluid forces on the particles are computing by integrating the tangential (viscous) and normal (pressure) forces at the edges of the fluid elements surrounding the particles.

Large deformable particles, on the other hand, behave as deformable bodies immersed in the fluid which are discretized via the standard FEM. Their motion can be followed using a staggered FSI scheme, or else by treating the deformable bodies and the fluid as a single continuum with different material properties. Details of this unified treatment of the interaction between fluids and deformable solids can be found in [12, 18, 46].

Stabilized FIC form of the mass balance equation

The modelling of incompressible fluids with a mixed finite element method using an equal order interpolation for the velocities and the pressure requires introducing a stabilized formulation for the mass balance equation.

In our work we use a stabilized form of the mass balance equation obtained via the Finite Calculus (FIC) approach [2933, 3739]. The FIC stabilized mass balance equation is written as

$$\begin{aligned} r_v + \tau {\partial \bar{r}_{m_i} \over \partial x_i}=0 \quad \hbox {in } V \end{aligned}$$


$$\begin{aligned} \bar{r}_{m_i} = {\partial \sigma _{ij} \over \partial x_j}+b_i + \frac{1}{n_f} f_i^{pf} \end{aligned}$$

is a static momentum term and \(\tau \) is a stabilization parameter computed as

$$\begin{aligned} \tau = \left( \frac{8\mu }{h^2}+\frac{2\rho _f}{\delta } \right) ^{-1} \end{aligned}$$

where \(h\) is a characteristic distance of each finite element and \(\delta \) is a time parameter.

The derivation of Eq. (19) for an homogeneous quasi-incompressible fluid is presented in [45].

The stabilization parameter \(\tau \) is computed in practice for each element \(e\) using \(h=l^e\) and \(\delta = \Delta t\) as

$$\begin{aligned} \tau = \left( \frac{8\mu }{(l^e)^2} + \frac{2\rho }{\Delta t} \right) ^{-1} \end{aligned}$$

where \(\Delta t\) is the time step used for the transient solution and \(l^e\) is a characteristic element length computed as \(l^e = 2(V^e)^{1/n_s}\) where \(V^e\) is the element area (for 3-noded triangles) or volume (for 4-noded tetrahedra). For fluids with heterogeneous material properties the values of \(\mu \) and \(\rho \) in Eq. (22) are computed at the element center.

Variational equations for the fluid

The variational form of the momentum and mass balance equations is obtained via the standard weighted residual approach [9, 60]. The resulting integral expressions after integration by parts and some algebra are:

Momentum equations

$$\begin{aligned}&\int \limits _V \! w_i \rho \frac{Dv_i}{Dt} dV + \!\int \limits _V \left[ \delta \varepsilon _{ij} 2\mu \varepsilon '_{ij} + \delta \varepsilon _{v}p\right] dV\nonumber \\&\quad - \!\int \limits _V w_i \left( b_i + \frac{1}{n_f} f_i^{pf}\right) dV - \!\int \limits _{\varGamma _t} w_i t_i^p d\varGamma =0 \end{aligned}$$

Mass balance equation

$$\begin{aligned}&\displaystyle \int \limits _V \frac{q}{\kappa } \frac{Dp}{Dt}dV - \int \limits _V q \left( \frac{1}{n_f} \frac{Dn_f}{Dt} +\varepsilon _{v}\right) dV\nonumber \\&\quad +\, \int \limits _V \tau {\partial q \over \partial x_i} \left( {\partial \over \partial x_i} (2\mu \varepsilon _{ij})+ {\partial p \over \partial x_i}+b_i\right) dV\nonumber \\&\quad \displaystyle -\, \int \limits _{\varGamma _t} q \tau \left[ \rho \frac{Dv_n}{Dt}-\frac{2}{h_n} (2\mu {\partial v_n \over \partial n} + p -t_n)\right] d\varGamma =0 \end{aligned}$$

The derivation of Eq. (23) and (24) for homogeneous fluids can be found in [45].

FEM discretization

We discretize the analysis domain containing \(N_p\) microscopic and macroscopic particles and a number of large particles into finite elements with \(n\) nodes in the standard manner leading to a mesh with a total number of \(N_e\) elements and \(N\) nodes. In our work we will choose simple 3-noded linear triangles (\(n=3\)) for 2D problems and 4-noded tetrahedra (\(n=4\)) for 3D problems with local linear shape functions \(N_i^e\) defined for each node \(i\) of element \(e\) [41, 58]. The velocity components, the weighting functions and the pressure are interpolated over the mesh in terms of their nodal values in the same manner using the global linear shape functions \(N_j\) spanning over the elements sharing node \(j\) (\(j=1,N\)) [41, 58].

The finite element interpolation over the fluid domain can be written in matrix form as

$$\begin{aligned} \mathbf{v} = \mathbf{N}_v\bar{\mathbf{v}} ~,~\mathbf{w} = \mathbf{N}_v\bar{\mathbf{w}} ~,~{p} = \mathbf{N}_p\bar{\mathbf{p}}~,~ q= \mathbf{N}_p \bar{\mathbf{q}} \end{aligned}$$


$$\begin{aligned}&\displaystyle \bar{\mathbf{v}} = \left\{ \begin{array}{l} \bar{\mathbf{v}}^1\\ \bar{\mathbf{v}}^2\\ \vdots \\ \bar{\mathbf{v}}^N\end{array}\right\} \quad \hbox {with}~ \bar{\mathbf{v}}^i = \left\{ \begin{array}{l} \bar{v}^i_1\\ \bar{v}^i_2\\ \bar{v}^i_3\end{array}\right\} , \bar{\mathbf{w}}= \left\{ \begin{array}{l} \bar{\mathbf{w}}^1\\ \bar{\mathbf{w}}^2\\ \vdots \\ \bar{\mathbf{w}}^N\end{array}\right\} \nonumber \\&\hbox {with}~ \bar{\mathbf{w}}^i = \left\{ \begin{array}{l} \bar{w}^i_1\\ \bar{w}^i_2\\ \bar{w}^i_3\end{array}\right\} , \bar{\mathbf{p}} =\left\{ \begin{array}{l} \bar{p}^1\\ \bar{p}^2\\ \vdots \\ \bar{p}^{N}\end{array}\right\} \quad \hbox {and}~\quad \bar{\mathbf{q}} =\left\{ \begin{array}{l} \bar{q}^1\\ \bar{q}^2\\ \vdots \\ \bar{q}^{N}\end{array}\right\} \nonumber \\&\displaystyle \mathbf{N}_v = [\mathbf{N}_1, \mathbf{N}_2,\cdots , \mathbf{N}_N ]^T ~,~ \mathbf{N}_p = [{N}_1, { N}_2,\cdots , {N}_N]\nonumber \\ \end{aligned}$$

with \(\mathbf{N}_j = N_j \mathbf{I}_{n_s}\) where \(\mathbf{I}_{n_s}\) is the \(n_s\times n_s\) unit matrix.

In Eq. (26) vectors \(\bar{\mathbf{v}}\), \((\bar{\mathbf{w}},\bar{\mathbf{q}})\) and \(\bar{\mathbf{p}}\) contain the nodal velocities, the nodal weighting functions and the nodal pressures for the whole mesh, respectively and the upperindex denotes the nodal value for each vector or scalar magnitude.

Table 1 Element form of the matrices and vectors in Eq. (27b) for 2D problems

Substituting the approximation (25) into the variational forms (23) and (24) gives the system of algebraic equations for the particulate fluid in matrix form as

$$\begin{aligned}&\mathbf{M}_0 {\dot{\bar{\mathbf{v}}}} + \mathbf{K}\bar{\mathbf{v}}+\mathbf{Q}\bar{\mathbf{p}}- \mathbf{f}_v=\mathbf{0}\end{aligned}$$
$$\begin{aligned}&\mathbf M _1 {\dot{\bar{\mathbf{p}}}}-\mathbf{Q}^T \bar{\mathbf{v}} + (\mathbf{L}+\mathbf{M}_b)\bar{\mathbf{p}}- \mathbf{f}_p=\mathbf{0} \end{aligned}$$

The different matrices and vectors in Eq. (27b) are shown in Table 1 for 2D problems.

Remark 3

The boundary terms of vector \(\mathbf{f}_p\) can be incorporated in the matrices of Eq. (27b). This, however, leads to a non symmetrical set of equations. For this reason we have chosen to compute these boundary terms iteratively within the incremental solution scheme.

Remark 4

Matrix \(\mathbf{M}_b\) in Eq. (27b) allows us to compute the pressure without the need of prescribing its value at the free surface. This eliminates the error introduced when the pressure is prescribed to zero in free boundaries, which may lead to considerable mass losses [20, 45].

Incremental solution of the discretized equations

Equation (27b) are solved in time with an implicit Newton-Raphson type iterative scheme [3, 9, 58, 60]. The basic steps within a time interval \([n,n+1]\) are:

  • Initialize variables: \(({}^{n+1}\mathbf x ^1,{}^{n+1}\bar{\mathbf{v}}^1,{}^{n+1}\bar{\mathbf{p}}^1,{}^{n+1}n_f^i, {}^{n+1}\bar{\mathbf{r}}^1_m)\equiv \left\{ {}^{n}\mathbf{x},{}^{n}\bar{\mathbf{v}},{}^{n}\bar{\mathbf{p}},{}^{n} n_f ,{}^{n}\bar{\mathbf{r}}_m \right\} \).

  • Iteration loop: \(k=1,\cdots , NITER\). For each iteration.

  • Step 1. Compute the nodal velocity increments \(\Delta \bar{\mathbf{v}}\) From Eq. (27ba), we deduce

    $$\begin{aligned} {}^{n+1}\mathbf{H}_v^i \Delta \bar{\mathbf{v}} = - {}^{n+1}\bar{\mathbf{r }}_m^k \rightarrow \Delta \bar{\mathbf{v}} \end{aligned}$$

    with the momentum residual \(\bar{\mathbf{r}}_m\) and the iteration matrix \(\mathbf{H}_v\) given by

    $$\begin{aligned} \bar{\mathbf{r }}_m\! = \mathbf M _0 {\dot{\bar{\mathbf{v}}}} \!+ \mathbf K \bar{\mathbf{v}}\!+\mathbf Q \bar{\mathbf{p}}-\!\mathbf f _v, \quad \mathbf H _v = \frac{1}{\Delta t} \mathbf M _0 + \mathbf K \! + \mathbf K _v\nonumber \\ \end{aligned}$$


    $$\begin{aligned} \mathbf K _v^e = \int \limits _{{}^nV^e} \mathbf B ^T \mathbf m \theta \Delta t\kappa \mathbf m ^T \mathbf B dV \end{aligned}$$
  • Step 2. Update the velocities

    $$\begin{aligned}&\hbox {Fluid nodes:}~~{}^{n+1}\bar{\mathbf{v}}^{k+1}= {}^{n+1}\bar{\mathbf{v}}^k + \Delta \bar{\mathbf{v}}\end{aligned}$$
    $$\begin{aligned}&\hbox {Rigid particles:}~~\left\{ \begin{array}{l} {}^{n+1/2}\dot{\mathbf{u}}_{j} = {}^{n-1/2}\dot{\mathbf{u}}_{j} + {}^{n}\ddot{\mathbf{u}}_{j}^{k+1} \Delta t\\ \dot{\mathbf{u}}_{j} = \frac{1}{m_j} {}^{n}\mathbf{F}_{j}^{k+1} ~~,~~j=1,N_p\end{array}\right. \nonumber \\ \end{aligned}$$
  • Step 3. Compute the nodal pressures \( {}^{n+1}\bar{\mathbf{p}}^{k+1}\) From Eq. (27b) we obtain

    $$\begin{aligned}&{}^{n+1} \mathbf H _p^i {}^{n+1}\bar{\mathbf{p}}^{k+1} = \frac{1}{\Delta t} \mathbf M _1 {}^{n+1}\bar{\mathbf{p}}^i\nonumber \\&\quad +\, \mathbf{Q}^T {}^{n+1}\bar{\mathbf{v}}^{k+1}+ {}^{n+1}\bar{\mathbf{f}}^{i}_p \rightarrow {}^{n+1}\bar{\mathbf{p}}^{k+1} \end{aligned}$$


    $$\begin{aligned} \mathbf H _p = \frac{1}{\Delta t} \mathbf M _1 + \mathbf L + \mathbf M _b \end{aligned}$$
  • Step 4. Update the coordinates of the fluid nodes and particles

    $$\begin{aligned}&\hbox {Fluid nodes:}~~{}^{n+1}\mathbf{x}^{k+1}_i= {}^{n+1}\mathbf{x}^k_i + \frac{1}{2} ({}^{n+1}\bar{\mathbf{v}}^{k+1}_i + {}^{n}\bar{\mathbf{v}}_i) \,\Delta t \quad ,\nonumber \\&i=1,N\end{aligned}$$
    $$\begin{aligned}&\hbox {Rigid particles:}~~\left\{ \begin{array}{l} {}^{n+1}\mathbf{u}_{i}^{k+1} = {}^{n}\mathbf{u}_{i}^{k+1} + {}^{n+1/2}\dot{\mathbf{u}}_{i}^{k+1}\Delta t\\ {}^{n+1}\mathbf{x}^{k+1}_i = {}^{n}\mathbf{x}_i + {}^{n+1}\mathbf{u}^{k+1}_i \quad ,~~ i=1,N_p \end{array}\right. \nonumber \\ \end{aligned}$$
  • Step 5. Compute the fluid volume fractions for each node \({}^{n+1}{n}^{k+1}_{f_i}\) via Eq. (2)

  • Step 6. Compute forces and torques on particles: \({}^{n+1}\mathbf{F}^{k+1}_i,{}^{n+1}\mathbf{T}^{k+1}_i~ ,~i=1,N_p\)

  • Step 7. Compute particle-to-fluid nodes: \(({}^{n+1}\mathbf{f}^{pf}_i)^{k+1} = - ({}^{n+1}\mathbf{f}^{fp}_i)^{k+1} ~ ,~ i=1,N\) with \(\mathbf{f}^{fp}_i\) computed by Eq. (18)

  • Step 8. Check convergence

Verify the following conditions:

$$\begin{aligned}&\displaystyle \Vert {}^{n+1}\bar{\mathbf{v}}^{k+1}- {}^{n+1}\bar{\mathbf{v}}^{k}\Vert \le e_v \Vert {}^{n}\bar{\mathbf{v}}\Vert \nonumber \\&\displaystyle \Vert {}^{n+1}\bar{\mathbf{p}}^{k+1}-{}^{n+1}\bar{\mathbf{p}}^k\Vert \le e_p \Vert {}^{n}\bar{\mathbf{p}}\Vert \end{aligned}$$

where \(e_v\) and \(e_p\) are prescribed error norms for the nodal velocities and the nodal pressures, respectively. In the examples solved in this work we have set \(e_v = e_p=10^{-3}\).

If both conditions (32) are satisfied then make \(n \leftarrow n+1 \) and proceed to the next time step.

Otherwise, make the iteration counter \(k \leftarrow k+1 \) and repeat Steps 1–8.

Remark 5

In Eq. (28)–(32) \({}^{n+1}(\cdot )\) denotes the values of a matrix or a vector computed using the nodal unknowns at time \(n+1\). In our work the derivatives and integrals in the iteration matrices \(\mathbf{H}_v\) and \(\mathbf{H}_p\) and the residual vector \(\bar{\mathbf{r}}_m\) are computed on the discretized geometry at time \(n\) (i.e. \(V^e = {}^{n}V^e\)) while the nodal force vectors \(\mathbf{f}_v\) and \(\mathbf{f}_p\) are computed on the current configuration at time \(n+1\). This is equivalent to using an updated Lagrangian formulation [3, 12, 44, 59].

Remark 6

The tangent “bulk” stiffness matrix \(\mathbf K _v\) in the iteration matrix \(\mathbf H _v\) of Eq. (28b) accounts for the changes of the pressure due to the velocity. Including matrix \(\mathbf K _v\) in \(\mathbf H _v\) has proven to be essential for the fast convergence, mass preservation and overall accuracy of the iterative solution [11, 45, 48].

Remark 7

The parameter \(\theta \) in \(\mathbf{K}_v\) (\(0< \theta \le 1\)) has the role of preventing the ill-conditioning of the iteration matrix \(\mathbf{H}_v\) for very large values of the speed of sound in the fluid that lead to a dominant role of the terms of the tangent bulk stiffness matrix \(\mathbf{K}_v\). An adequate selection of \(\theta \) also improves the overall accuracy of the numerical solution and the preservation of mass for large time steps. Details of the derivation of Eq. (28c) can be found in [45].

Remark 8

The iteration matrix \(\mathbf H _v\) in Eq. (28a) is an approximation of the exact tangent matrix in the updated Lagrangian formulation for a quasi/fully incompressible fluid [44]. The simplified form of \(\mathbf H _v\) used in this work has yielded very good results with convergence achieved for the nodal velocities and pressure in 3–4 iterations in all the problems analyzed.

Remark 9

The time step within a time interval \([n,n+1]\) has been chosen as \(\Delta t =\min \left( \frac{^n l_{\min }^e}{\vert {}^n\mathbf{v}\vert _{\max }},\Delta t_b\right) \) where \(^n l_{\min }^e\) is the minimum characteristic distance of all elements in the mesh, with \(l^e\) computed as explained in Sect. 6, \(\vert ^n\mathbf{v}\vert _{\max }\) is the maximum value of the modulus of the velocity of all nodes in the mesh and \(\Delta t_b\) is the critical time step of all nodes approaching a solid boundary [45].

About the particle finite element method (PFEM)

The basis of the PFEM

Let us consider a domain \(V\) containing fluid and solid subdomains. Each subdomain is characterized by a set of points, hereafter termed virtual particles. The virtual particles contain all the information for defining the geometry and the material and mechanical properties of the underlying subdomain. In the PFEM both subdomains are modelled using an updated Lagrangian formulation [3, 44, 59].

The solution steps within a time step in the PFEM are as follows:

  1. 1.

    The starting point at each time step is the cloud of points \(C\) in the fluid and solid domains. For instance \(^{n} C\) denotes the cloud at time \(t={}^n t \) (Fig. 5).

    Fig. 5
    figure 5

    Sequence of steps in the PFEM to update a “cloud” of nodes representing a domain containing a fluid and a solid part (in darker color) from time \(n\) (\(t=^n t\)) to time \(n+2\) (\(t=^n t +2\Delta t\)) (Color figure online)

  2. 2.

    Identify the boundaries defining the analysis domain \(^{n} V\), as well as the subdomains in the fluid and the solid. This is an essential step as some boundaries (such as the free surface in fluids) may be severely distorted during the solution, including separation and re-entering of nodes. The Alpha Shape method [10] is used for the boundary definition. Clearly, the accuracy in the reconstruction of the boundaries depends on the number of points in the vicinity of each boundary and on the Alpha Shape parameter. In the problems solved in this work the Alpha Shape method has been implementation as described in [17, 35].

  3. 3.

    Discretize the the analysis domain \(^{n} V\) with a finite element mesh \({}^{n} M.\)We use an efficient mesh generation scheme based on an enhanced Delaunay tesselation [17, 35].

  4. 4.

    Solve the Lagrangian equations of motion for the overall continuum using the standard FEM. Compute the state variables in at the next (updated) configuration for \(^n t+\Delta t\): velocities, pressure and viscous stresses in the fluid and displacements, stresses and strains in the solid.

  5. 5.

    Move the mesh nodes to a new position \(^{n+1} C\) where \(n+1\) denotes the time \({}^n t +\Delta t\), in terms of the time increment size.

  6. 6.

    Go back to step 1 and repeat the solution for the next time step to obtain \({}^{n+2} C\).

Note that the key differences between the PFEM and the classical FEM are the remeshing technique and the identification of the domain boundary at each time step.

The CPU time required for meshing grows linearly with the number of nodes. As a general rule, meshing consumes for 3D problems around 15 % of the total CPU time per time step [43].

Application of the PFEM in fluid and solid mechanics and in fluid-structure interaction problems can be found in [4, 5, 8, 11, 1720, 25, 27, 28, 35, 36, 38, 40, 4246, 52], as well in

Treatment of contact conditions

Known velocities at boundaries in the PFEM are prescribed in strong form to the boundary nodes. These nodes might belong to fixed external boundaries or to moving boundaries linked to the interacting solids. Surface tractions are applied to the Neumann part of the boundary, as usual in the FEM.

Contact between fluid particles and fixed boundaries is accounted for by adjusting the time step so that fluid nodes do not penetrate into the solid boundaries [45].

The contact between two large particles (and between two bodies, in general) is treated by introducing a layer of contact elements between the two interacting particles. This contact interface layer is automatically created during the mesh generation step by prescribing a minimum distance \(\left( h_{c} \right) \) between two interacting particles. If the distance exceeds the minimum value \(\left( h_{c} \right) \) then the generated elements are treated as fluid elements. Otherwise the elements are treated as contact elements where a relationship between the tangential and normal forces and the corresponding displacement is introduced [35, 40, 43] (Fig. 6).

Fig. 6
figure 6

a Large particles (in dark color) surrounded by a finite element mesh. The contact interface is shown in red color. b Contact interface between two objects treated as large particles and between an object and a wall (Color figure online)

This algorithm allows us to model complex frictional contact conditions between two or more interacting bodies moving in water in an a simple manner. The algorithm has been used to model frictional contact situations between rigid and elastic solids in structural mechanics applications, such as soil/rock excavation problems [4, 5]. The frictional contact algorithm described above has been extended by Oliver et al. [27, 28] for analysis of metal cutting and machining problems.

Figure 7 shows an example of the analysis with the PFEM of a collection of large particles submerged in a tank containing water in sloshing motion.

Fig. 7
figure 7

PFEM results for the motion of large particles submerged in a tank containing water in sloshing motion

Treatment of surface erosion

Prediction of bed erosion and sediment transport in open channel flows are important tasks in many areas of river and environmental engineering. Bed erosion can lead to instabilities of the river basin slopes. It can also undermine the foundation of bridge piles thereby favouring structural failure. Modeling of bed erosion is also relevant for predicting the evolution of surface material dragged in earth dams in overspill situations. Bed erosion is one of the main causes of environmental damage in floods.

Oñate et al. [36] have proposed an extension of the PFEM to model bed erosion. The erosion model is based on the frictional work at the bed surface originated by the shear stresses in the fluid.

The algorithm for modeling the erosion of soil/rock particles at the fluid bed is briefly the following:

  1. 1.

    Compute at every point of the bed surface the tangential stress \(\tau \) induced by the fluid motion.

  2. 2.

    Compute the frictional work \(W_f\) originated by the tangential stress at the bed surface.

  3. 3.

    The onset of erosion at a bed point occurs when \({}^nW_f\) exceeds a critical threshold value \(W_c\).

  4. 4.

    If \({}^nW_f > W_c\) at a bed node, then the node is detached from the bed region and it is allowed to move with the fluid flow. As a consequence, the mass of the patch of bed elements surrounding the bed node vanishes in the bed domain and it is transferred to the adjacent fluid node. This mass is subsequently transported with the fluid as an immersed macroscopic particle.

  5. 5.

    Sediment deposition can be modeled by an inverse process to that described in the previous step. Hence, a suspended node adjacent to the bed surface with a velocity below a threshold value is attached to the bed surface.

Figure 8 shows an schematic view of the bed erosion algorithm described. Details of the algorithm can be found in [36].

Fig. 8
figure 8

Modeling of bed erosion with the PFEM. The mass of the eroded domain is assigned to the fluid node \(k\)

A nodal algorithm for transporting microscopic and macroscopic particles within a finite element mesh

The fact that in the PFEM a new mesh is regenerated at each time step allows us to make microscopic and macroscopic particles to be coincident with fluid nodes. An advantage of this procedure is that it provides an accurate definition of the particles at each time step which is useful for FSI problems.

The algorithm to compute the position of the particles using the nodal algorithm is as follows.

At each time step \({}^n t\):

  1. 1.

    Compute the converged value of the position of the fluid nodes (\({}^{n+1}\mathbf{x}_i,~i = 1,\ldots ,N\)) and the particles (\({}^{n+1}\mathbf{x}_j,~j = 1,\ldots ,N_p\)) using the algorithm of Sect. 9. The \(N_p\) particles coinciding with \(N_p\) fluid nodes (\(N_p \le N\)) will typically move to a different position than that of the corresponding fluid nodes (Fig. 9).

    Fig. 9
    figure 9

    Nodal algorithm for tracking the motion of particles submerged in a fluid. a Particle \(i\) is coincident with a fluid node. b Update the position of the particle and the adjacent nodes. c Regeneration of the fluid mesh consistent with the new particle position

  2. 2.

    Regenerate the mesh discretizing the fluid domain treating the \(N_p\) particles as fluid nodes and ignore the fluid nodes originally coinciding with the \(N_p\) particles at \({}^{n+1} t\).

  3. 3.

    Interpolate the velocity of the fluid nodes at the position of the \(N_p\) particles surrounding the fluid nodes.

The algorithm is schematically described in Fig. 9.

Figure 10 show an example of the application of the nodal algorithm to the study of the motion of an individual particle within a rectangular domain filled with water. The correct end velocity for the individual particle is obtained as shown in Fig. 10c. Figures 11, 12 and 13 show other examples of application of the nodal algorithm to the motion of macro-particles in water containers.

Fig. 10
figure 10

Cylindrical particles falling in a water container. 2D PFEM solution using the nodal algorithm for tracking the particle motion. a Mesh and particle at a certain instant. b Contours of the vertical velocity module. c Evolution of the vertical velocity of the particle until a steady state solution is found [6, 15]

Fig. 11
figure 11

Motion of ascending and descending particles of different density in a fluid domain. PFEM results using the nodal algorithm for tracking the particles motion

Fig. 12
figure 12

Motion of three macroscopic particles in a water sloshing problem within a tank. PFEM results obtained using the nodal algorithm for particle tracking

Fig. 13
figure 13

PFEM analysis of the penetration of a collection of spherical (macroscopic) particles into a water container

Other examples of application of this algorithm are shown in the next section.


We present the study of a several problems involving the transport of macroscopic and large particles in fluid flows. The problems are schematic representations of particulate flows occurring in practical problems of civil and environmental engineering and industrial problems.

Most problems studied have been solved with the PFEM using the nodal algorithm for the transport of macroscopic particles described in the previous section. An exception are the problems in Sect. 12.6 dealing with the vertical transport of spherical particles in a cylinder where the standard immersed approach for the transport of macroparticles described in Sects. 14 was used and the fluid equations were solved with an Eulerian flow solver implemented in the Kratos open-source software platform of CIMNE [24].

Erosion of a slope adjacent to the shore due to sea waves

Figure 14 shows a representative example of the progressive erosion of a soil mass adjacent to the shore due to sea waves and the subsequent falling into the sea of a 2D object representing the section of a lorry. The object has been modeled as a rigid solid. Note that the eroded soil particles accumulate at the sea bottom.

Fig. 14
figure 14

Falling of a lorry into the sea by erosion of the underlying soil mass due to the action of waves

This example, although still quite simple and schematic, evidences the possibility of the PFEM for modeling FSSI problems involving soil erosion, transport and deposition of soil particles, free surface waves and rigid/deformable structures.

Landslide falling on houses

Figure 15 shows two instants of the 2D simulation with the PFEM of the motion of a collection of macroscopic particles as they slide over an inclined wall and fall into a water container.

Fig. 15
figure 15

Sliding of macroscopic particles over an inclined wall entering a container with water

The PFEM is particularly suited for the modelling and simulation of landslides and their effect in the surrounding structures. Figure 16 shows an schematic 2D simulation of a landslide falling on two adjacent constructions. The landslide material has been assumed to behave as a pure viscoplastic material modelled as a non-Newtonian viscous incompressible fluid [57]. Other applications of the PFEM to the modelling of landslides can be found in [8, 49].

Fig. 16
figure 16

3D PFEM simulation of a landslide falling on four houses

Dragging of rocks by a water stream

Figure 17 shows the dragging of a collection of rocks modelled as large rigid particles of arbitrary shape by the action of a water stream. The particles move due to the action of the water forces on the particles computed by integrating the pressure and the viscous stresses in the elements surrounding each particle.

Fig. 17
figure 17

3D PFEM results for the dragging of a collection of large rocks by a water stream

Suction of cohesive material submerged in water

Figures 18 and 19 show two examples of the detachment, suction and transport of particles of a cohesive material submerged on water. Figure 18 shows how the particles detatch from the cohesive soil bed and are transported within the suctioning tube (modelled as a 2D problem). The last picture shows the erosion in the soil as the mixture of water and eroded particles falls down from within the tube and hits the soil surface due to a stop in the suction pressure.

Fig. 18
figure 18

2D PFEM analysis of the detachment and suction of cohesive material submerged in water. The last picture shows the erosion of the bed material after the impact of the mixture of water and eroded particles falling from within the tube

Fig. 19
figure 19

3D PFEM simulation of the detachment, suction and transport of submerged cohesive material from one recipient to another

Figure 19 shows a similar 3D problem. The suction in the tube erodes the surface of the soil bed in the right hand container. The mixture of water and eroded particles is transported to the adjacent containers.

Filling of a water container with particles

Figure 20 shows a 3D example of the filling of a cylindrical container with water containing macroscopic spherical particles. Water is allowed to exit the cylinder by a lateral hole while particles enter from two other holes at different height and fall down by gravity until they progressively fill the cylinder. The figures show different instants of the filling process.

Fig. 20
figure 20

Filling of a container by injecting water containing macroscopic particles from two holes. Water is allowed to exit through a third hole at the upper right hand side of the cylinder. 3D PFEM results at four instants

Transport of spherical particles in a tube filled with water

The example in Fig. 21 models the vertical transport of some 120.000 spherical particles to the surface of a tube filled with water and the subsequent deposition of the particles on the free water surface at the top of the tube. Particles move upwards within the tube due to a fluid velocity of 1 m/s. The average size of the particles radius is 2 mm and their density is 2,30  Kg/m\(^3\). Particles move vertically until they reach the top of the fluid domain and accumulate there due to the combined effect of their weight and the effect of the interaction force from the fluid. Figure 21 shows two instants of the particles ascending process. The accumulation of particles in the water free surface at the top of the tube is clearly seen.

Fig. 21
figure 21

Transport of spherical macroparticles up to the free surface of a tube filled with water. Particles move up with a prescribed velocity until they accumulate on the free surface. Results obtained with a coupled DEM-Eulerian CFD code [24]

Figure 22 shows the interaction of eigth jets of ascending air bubbles with 200.000 spherical solid particles that fall down within a cylinder filled with water.

Fig. 22
figure 22

Interaction of eight jets of ascending air bubbles with a thick layer of 200.000 spherical particles that fall down within a cylinder filled with water. Numerical results obtained with a coupled DEM-Eulerian CFD code [24]

Dragging of large objects and small particles in a tsunami type flow

The last example is the dragging of cars, barrels and debris (modelled as macroscopic particles) by a water stream that flows over a vertical wall. The problem represents an schematic study of a real situation corresponding to the tsunami in Fukushima (Japan) on March 2011 (Fig. 23). Figures 24 show two snapshots of the PFEM solution of this complex problem.

Fig. 23
figure 23

Dragging of cars and large and small objects in the Fukushima tsunami (Japan)

Fig. 24
figure 24

Dragging of large objects and macroscopic particles in a tsunami type flow passing over a vertical wall. 3D PFEM results

Concluding remarks

We have presented a Lagrangian numerical technique for analysis of flows incorporating physical particles of different sizes. The numerical approach is based on the PFEM and a stabilized Lagrangian mixed velocity-pressure formulation. The examples presented in the paper evidence the possibilities of the PFEM for analysis of practical multiscale particulate flows in industrial and environmental problems.