Articles | Volume 18, issue 22
https://doi.org/10.5194/gmd-18-9149-2025
https://doi.org/10.5194/gmd-18-9149-2025
Model description paper
 | 
27 Nov 2025
Model description paper |  | 27 Nov 2025

Matter (v1): an open-source MPM solver for granular matter

Lars Blatny and Johan Gaume
Abstract

Simulating the mechanics and flow of granular media requires numerical methods that can handle extreme deformations, along with accurate constitutive models capable of capturing phenomena such as elasticity, shear banding, viscous behavior, compressibility, intergranular attractive forces and rate-dependent friction. In pursuit of this, this article introduces Matter, a Material Point Method (MPM) solver equipped with a range of models to describe dry and cohesive granular media. Rooted in a finite strain elastoplastic framework with a multiplicative decomposition of the deformation gradient, this solver features Drucker-Prager models, overstress models, critical state mechanics models as well as the μ(I)-rheology. This includes the recently proposed “critical state μ(I)-rheology model” for cohesive and compressible flows. Moreover, Matter provides a simple way of dealing with complex terrains and introduces a novel material-induced frictional boundary condition. Implemented in C++ with few required dependencies and parallelized on shared memory, it represents a lightweight yet computationally efficient option for laptops and desktops.

Share
1 Introduction

Sand, snow, powders and other granular materials typically undergo large deformations, display changes in topology and even experience phase transitions between solid- and fluid-like behavior. Therefore, simulating the dynamics of these media as continua can be a challenging endeavor. As a hybrid Eulerian-Lagrangian method, the Material Point Method (MPM) has since its original formulation in the 1990s established itself as a popular numerical method capable of simulating materials undergoing very large deformations and topology changes. Although the original formulation of MPM is often attributed to Sulsky et al. (1994), it can also be viewed as an extension of Particle-In-Cell (PIC) methods (Harlow1964), in particular the FLuid-Implicit-Particle method (FLIP) (Brackbill et al.1988), to solid mechanics problems, especially problems involving history-dependent materials. Simply put, MPM updates the state of Lagrangian (material) points which carry material properties such as mass, deformation gradient and velocity, while also using an Eulerian grid which facilitates solving the weak form of the momentum balance equation in a manner similar to the Finite Element Method (FEM). As such, MPM offers the advantage of completely avoiding mesh distortion issues in a conceptually simple approach where boundary conditions can be applied as easily as in FEM. Although its similarity to FEM is undoubtedly an advantage, MPM does not inherit all the well-established convergence and stability properties that have been developed over FEM's long history. Nevertheless, earlier criticism related to cell-crossing instabilities and numerical dissipation in MPM has been resolved by the community (e.g., Steffen et al.2008a; Jiang et al.2017; Fei et al.2021). Due to its hybrid nature, MPM comes with a larger memory footprint compared to both FEM and meshless methods such as the Smoothed-Particle Hydrodynamics (SPH). However, it does not necessarily demonstrate a poorer performance compared to SPH as such a meshless scheme requires keeping track of the neighboring discretization points (Raymond et al.2018; Vacondio et al.2021). Methods similar in concept to MPM, incorporating the hybrid idea, include the Particle Finite Element Method (PFEM) (Idelsohn et al.2004) and the Finite Element Method with Lagrangian Integration Points (FEMLIP) (Moresi et al.2003). In the former, originally conceived for fluid problems and later applied to solids (Oliver et al.2007), mesh points move in space like Lagrangian particles and remeshing occurs every time the distortion becomes significant (Cremonesi et al.2020).

There exist several open-source implementations of MPM. Among the first publicly available projects are Uintah MPM (Davison De St. Germain et al.2000), Nairn MPM (Nairn2015), Anura3D (Anura3D2017), MPM3D-F90 (Zhang et al.2017), as well as MPM-GIMP (Wallstedt2011) which is an implementation of the algorithm presented in Bardenhagen and Kober (2004). More recent projects include CB-Geo (Kumar et al.2019), Karamelo (de Vaucorbeil et al.2021) as well as the Matlab learning environment AMPLE (Coombs and Augarde2020). The efficient implementation fMPMM in Matlab (Wyser et al.2020) and the implementation by Iaconeta et al. (2019) in Kratos (Dadvand et al.2010) should also be mentioned here. Recently, the computer graphics community has seen a number of MPM implementations in the general framework of the programming language Taichi (Hu et al.2019), including MLS-MPM (Hu et al.2018a) and ASFLIP (Fei et al.2021). The communities have also recently been enriched with several open-source MPM implementations for GPU architectures. One of the earlier is GMPM (Gao et al.2018) for single-GPU and Claymore (Wang et al.2020) for multi-GPU architectures. In the context of granular flow, a sparse-memory-encoding GPU framework was recently described by Chen et al. (2025).

Each of the above-mentioned open-source codes offers its own advantages and is typically designed to address specific types of problems, be it in the graphics community or in the engineering communities. In the context of modeling granular matter, however, the existing codes display a limited availability of constitutive laws and rheologies to capture the breadth of such materials which may display elastic behavior, undergo plastic deformation and/or act as a viscous fluid depending on the conditions. Under small/slow deformations, granular media act as elastoplastic solids and appropriate constitutive models must accurately capture their internal frictional behavior and transition into a critical state (Radjai et al.2017). Under large/fast deformations, granular media behave as a pressure-dependent viscoplastic fluid, and it is generally accepted that dense granular flows follow the so-called μ(I)-rheology (GDR MiDi2004; Jop et al.2006). While materials like sand generally exhibit limited compressibility, snow can undergo much larger variations in its density, e.g., during an avalanche. Even more complicated, cohesive granular media such as snow present additional complexities due to the presence of intergranular forces that influence both their mechanical and flow properties. The study of the flow of cohesive granular media has seen a significant boost in recent years, e.g., with new models or proposed alterations to existing rheologies (Rognon et al.2006, 2008; Radjai and Richefeu2009; Khamseh et al.2015; Berger et al.2015; Badetti et al.2018; Vo et al.2020; Abramian et al.2020; Mandal et al.2020, 2021; Macaulay and Rognon2021; Ku et al.2023; Blatny et al.2024).

This article introduces Matter (Blatny and Gaume2025), an open-source MPM solver encompassing a wide range of models to capture the complex and diverse behavior of granular media, including cohesive and highly compressible granular media. Most notably, it implements the μ(I)-rheology, as well as the recent critical state μ(I)-rheology, both of which can be used with a user-prescribed cohesion and frictional boundary conditions that can optionally be related to the internal friction of the material. It is intended for users studying fundamental granular mechanics as well as those interested in large-scale practical applications. The remainder of this article is organized as follows. First, the governing equations and their discretized form are outlined, followed by an introduction to the finite strain formulation in which all the different constitutive models are formulated. Second, the algorithm is detailed, and the handling of terrains and boundaries is specified. Third, details of the implementations are discussed and verified before finally a few use cases are demonstrated.

2 Theory, discretization and model selection

In this section, MPM is introduced as a numerical continuum scheme for approximating solutions to the momentum and mass conservation laws subject to constitutive models.

2.1 Governing balance laws

The conservation of mass and linear momentum are given by

(1) D ρ ( x , t ) D t + ρ ( x , t ) v ( x , t ) = 0

and

(2) ρ ( x , t ) D v ( x , t ) D t = σ ( x , t ) + ρ ( x , t ) g ,

respectively, where ρ is the mass density, v is the velocity, σ is the symmetric Cauchy stress tensor and D/Dt denotes the material time derivative. In Eq. (2) it is assumed that the only external body force present is the one resulting from the gravitational acceleration g.

2.2 Discretization

Similarly to FEM, the numerical discretization of MPM starts with the weak form of the governing partial differential equations introduced above. While information is stored on the material points which move in space, the momentum conservation equation is solved on a stationary mesh which usually takes the form of a regular and uniform grid (see Fig. 1).

https://gmd.copernicus.org/articles/18/9149/2025/gmd-18-9149-2025-f01

Figure 1A body discretized into Nparticles particles with Nnodes background grid nodes.

Download

The notation used in this and the next sections can be summarized as follows:

  • The domain of the body is described by a finite number Nparticles particles and a finite number Nnodes grid nodes.

  • Subscript p means the quantity is associated with particle p[1,,Nparticles].

  • Subscript i means the quantity is associated with grid node i[1,,Nnodes].

  • Superscript n means the quantity is evaluated at time tn associated with time step n∈ℕ.

In order to interpolate between particles and grid nodes, interpolation functions Ni(x) which are strictly non-negative are considered such that xp=ixiNi(xp)p. Conservation of mass is automatically fulfilled as the total mass of the system pmp is the sum of all particle masses which remain constant in time. The volume Vp is, however, not necessarily constant in time.

In the framework of the standard (i.e., updated Lagrangian) MPM the weak form of the momentum conservation equation must be discretized on the grid in the Eulerian configuration. Following closely the derivation in Jiang et al. (2016), Klár (2016) and Pradhana (2017), the spatial and temporal discretization of the momentum equation on the Eulerian grid nodes i assuming a time step size Δt can be derived (neglecting the boundary term) as

(3) m i n v i n + 1 - m i n v i n Δ t = - p V p n σ p n N i ( x p n ) + m i n g

where now the left hand side represents the change in momentum while the right hand side represents the internal and external forces. The following remarks should be made:

  • This is an updated Lagrangian MPM, which is by far the most popular variant of MPM. This variant can be thought of as the equivalent to the updated Lagrangian FEM discretization, where the quadrature points are now the material points which can move in space and the quadrature weights are now the particle volumes. For this reason, MPM is sometimes referred to as a variant of FEM (de Vaucorbeil et al.2020b; Nguyen et al.2023). A total Lagrangian variant of MPM has been proposed by de Vaucorbeil et al. (2020a) in analogy to the total Lagrangian FEM.

  • An explicit time discretization is assumed as the variables on the right-hand side of Eq. (3) are evaluated at time tn. While implicit formulations of MPM also exist, explicit MPM remains the most popular in the literature. Although implicit schemes are computationally more expensive than explicit integration (due to the need of solving a nonlinear system of equations at each time step), larger time steps are allowed. This is in contrast to explicit schemes where the time step size must be severely restricted (Sołowski et al.2021).

  • The weak form above is derived with mass lumping. Commonly applied in explicit MPM, mass lumping is a simplification also commonly adopted in explicit FEM schemes. This avoids having to invert the full mass matrix, also bringing about improved stability, however, it may result in increased energy dissipation (Love and Sulsky2006; de Vaucorbeil et al.2020b).

The reader is referred to, e.g., de Vaucorbeil et al. (2020b), Sołowski et al. (2021) and Nguyen et al. (2023) for a more detailed overview of current MPM schemes.

2.3 Finite strain elastoplasticity

In the well-established finite strain framework of a multiplicative decomposition of the deformation gradient F=FEFP (Lee1969), Matter adopts Hencky's elasticity model which gives a linear relation between the Kirchhoff stress τ=det(F)σ and the Hencky strain εE,

(4) τ = Ψ ^ ( ε E ) ε E = λ tr ( ε E ) I + 2 G ε E ,

where λ and G are the two Lamé parameters. Here, the strain energy density function Ψ^ takes the same functional form as in the Saint-Venant-Kirchhoff model expressed in terms of the Hencky strain instead of the Green strain. The superscript on the Hencky strain serves as a reminder that only the elastic part of the strain promotes stresses. In the context of this isotropic and hyperelastic model, it can be shown that the Kirchhoff stress τ and the Hencky strain εE constitute a work-conjugate pair. This, as well as other admirable properties, in particular in relation to hypoelastic models, are presented and derived in Bruhns et al. (1999) and Xiao and Chen (2002).

A yield surface y(τ,)=0, defined through the yield function y, determines the onset of permanent, plastic, deformations. Not considering overstress models (Sect. 2.7), the yield surface defines admissible states y≤0 where plastic deformations are restricted to y=0. The velocity gradient l is assumed additively decomposed as l=lE+lP. The plastic part of the velocity gradient is determined through the flow rule as

(5) l P = γ ˙ g τ ,

i.e., with a magnitude determined by the plastic multiplier γ˙ and a direction provided through the plastic potential function g=g(τ). The Kuhn–Tucker conditions must be fulfilled,

(6) γ ˙ 0 , y 0 , γ ˙ y = 0 ,

although in the context of overstress models (Sect. 2.7) these restrictions may be relaxed.

Solving the finite strain elastoplastic problem can be accomplished following Simo (1992). An elastic predictor is calculated assuming no plasticity and corrected in case the yield condition is violated. Denoting the Hencky strain εE,trial predicted in an elastic step from time tn, this “trial” state is corrected in the return mapping to the new state εE,n+1 at time tn+1 as

(7) ε E , n + 1 = ε E , trial - l P Δ t

which is derived in detail in Blatny (2023). Consequently, the plastic Hencky strain occurring in a time step Δt can be quantified as ΔεP,n+1=lPΔt.

The above elastoplastic problem can be solved in three or two spatial dimensions. In Matter, the two-dimensional solver option assumes plane strain conditions. From the Lamé parameters, one may construct a Young's modulus E=G(3λ+2G)λ+G and Poisson's ratio ν=λ2(λ+G), however, under plane strain conditions, it is often common to define plane strain moduli E2D=E1-ν2 and ν2D=ν1-ν. In the remainder of this article, aligned with the adopted code convention, only (the three-dimensional definitions of) E and ν will be used, and the plane strain definitions can be calculated by the user separately if desired.

Specific elasto-viscoplastic constitutive models that define yield functions and flow rules for granular media are outlined in the remainder of this section, highlighting the wide variety of options available. All models in Matter are formulated in terms of the stress invariants

(8) p = - 1 d tr ( τ )

and

(9) q = 1 2 | | dev ( τ ) | |

where p is termed the isotropic pressure and q the equivalent shear stress, using the notation ||A||=A:A=tr(AA) and dev(A)=A-1dtr(A)I for a symmetric second-order tensor A. The invariant 3q is often termed the von Mises equivalent stress. Note that the two-dimensional solver, i.e., when d=2, uses p=(τ1+τ2)/2 and q=12|τ1-τ2| where τ1 and τ2 denote the principal stresses. This follows from the common choice, under plane strain conditions, of assuming ν=0.5 for yield and plastic flow, see, e.g., Tian (2009), Wojciechowski (2018) and references therein.

2.4 Von Mises

The von Mises model (von Mises1913) has a yield function given by

(10) y ( p , q ) = q - q y

where qy>0 is the von Mises yield stress. The plastic flow rule is generally chosen associative, i.e., g=y. Often used to describe ductile metals, it has also been used to model soils under undrained conditions (Yu2006). However, due to its pressure-independency, its applicability for granular media in general is limited.

2.5 Drucker–Prager

The Drucker–Prager model (Drucker and Prager1952) extends the von Mises model with pressure-dependency,

(11) y ( p , q ) = q - q y ( p ) , where q y = μ p + q c

where μ>0 is the internal friction and qc≥0 is a cohesive stress (or shear strength). Since an associative flow rule would result exclusively in volume increase, i.e., tr(lP)≠0, this model is often complemented with a non-associative rule, typically using the von Mises plastic potential, i.e., g=q. In Matter, such a flow rule is implemented and combined with the standard “cone tip projection” to address the singularity in the Drucker–Prager yield surface (see e.g., Blatny et al.2023). As a result of this singularity treatment, some permanent volumetric expansion under tension will occur, which can optionally be suppressed using the volume correction scheme of Pradhana (2017).

A strain-softening Drucker–Prager model is also introduced, in which qc is no longer a constant, but decreases with the equivalent plastic shear strain εSP according to a softening parameter ξ≥0 through

(12) q c = q c 0 e - ξ ε S P

where qc0>0 is the initial cohesive stress before any deformation occurs. The equivalent plastic shear strain εSP is a non-negative scalar defined by

(13) ε S P = | | dev ( l P ) d t n | | dev ( Δ ε P , n ) .

This formulation of the strain-softening Drucker-Prager model has been used in e.g., Blatny et al. (2021) and Blatny et al. (2023). If ξ→∞, this model promotes a brittle behavior as the cohesion would be immediately removed after initial failure. Other formulations of the strain-softening behavior are also possible.

2.6 Modified Cam–Clay

Critical State Soil Mechanics (CSSM) (Schofield and Wroth1968) is a well-established theory in the geomechanics/geotechnics community for describing the mechanics of granular media as elastoplastic solids. This theory is conceived from the idea that there exists a critical state where shear deformations can go on without further changes to volume and stress. In particular, a Critical State Line (CSL) can be defined in (p,q)-space along which all such critical states can exist. Although there are different models that incorporate the main ideas of CSSM, the Modified Cam–Clay (MCC) model is arguably one of the most commonly used in numerical implementations. First formulated by Roscoe and Burland (1968), the MCC model is characterized by an evolving yield surface of ellipsoidal shape in principal stress space.

An MCC yield function that incorporates cohesion can be defined as

(14) y ( p , q ) = q - q y ( p ) , where q y = μ p + β p c p c - p ,

where μ>0 defines the slope of the CSL, pc≥0 is an isotropic compressive strength and β≥0 is a dimensionless measure of cohesion. All critical states (on the CSL) are found on a Drucker-Prager-like surface q=μ(p+βpc), and for exactly this reason the symbol μ is here also used for the slope of the CSL. In Eq. (14), βpc represents the isotropic tensile strength, and β can therefore also be described as the ratio between tensile and compressive strength. The case β=0 represents the cohesionless case. In this case, the material can not sustain any tensile stress states. If β>0, there will always be a non-zero tensile strength (unless pc=0 which represents the stress-free state).

An associative flow rule is used, that is, g=y. As such, both dilation and compaction can occur. An imposed hardening law ensures that the yield surface will shrink or expand, respectively, until critical state is reached. Two hardening laws are considered, both dependent on the equivalent plastic volumetric Hencky strain εVP defined as

(15) ε V P = tr ( l P ) d t n tr ( Δ ε P , n ) .

The first hardening law is given by

(16) p c ( ε V P ) = p c 0 e - ξ ε V P

reminiscent of the hardening laws typically used in Cam–Clay models. The second, as presented in Gaume et al. (2018) inspired by Ortiz and Pandolfi (2004), is given by

(17) p c ( ε V P ) = K sinh - ξ ε V P + sinh - 1 p c 0 K

where in both cases ξ≥0 is a dimensionless parameter and pc00 is an initial compressive strength before any plastic compaction/dilation has occurred. In Eq. (17), K=λ+2G/d is the bulk modulus.

2.7 Overstress models

The above models are restricted to rate-independent plasticity. Viscoplasticity, i.e., rate-dependent plasticity, may be introduced with various approaches. Here, the general overstress model of Perzyna (1963, 1966) is considered. In this approach, a rate-independent yield surface y=0 defines the onset of viscoplastic deformation which occurs for y>0, and a separate expression for the plastic strain rate is imposed. This is in contrast to, e.g., the consistency model (Wang et al.1997) where the yield surface itself evolves with the rate of deformation and this model can therefore obey all three Kuhn–Tucker relations. Interestingly, both approaches are in the end to a certain extent identical (Heeres et al.2002).

Following the approach of Perzyna, given a yield stress qy potentially dependent on p, the plastic shear strain rate γ˙S=2||dev(lP)|| is imposed using the formulation of Perić (1993), in particular,

(18) γ ˙ S = 0 if y < 0 1 t visc q q y ( p ) 1 / s - 1 if y 0

where tvisc is a viscous time determining the viscosity of the material and s is a non-negative exponent. The formulation of Perić (1993) has the advantage of recovering the rate-independent limit as s→0 (Neto et al.2008). The yield stress qy(p) in Eq. (18) can be chosen as that from von Mises, i.e., Eq. (10), Drucker–Prager, i.e., Eq. (11) or Modified Cam–Clay, i.e., Eq. (14), respectively. Not considering the elastic behavior below yield, the overstress model of Eq. (18) with the choice of a von Mises yield describes Herschel–Bulkley viscoplasticity (Herschel and Bulkley1926). If s=1, this reduces to a Bingham fluid (Bingham1922).

2.8 The μ(I)-rheology

The μ(I)-rheology (GDR MiDi2004; Jop et al.2006) is a well-established continuum description of dense granular flow where the apparent internal friction depends on a non-dimensional number termed the inertial number I defined by the pressure, shear rate as well as the grain diameter dg and grain density ρg. Following the general idea of Dunatunga and Kamrin (2015), this rheology can be incorporated in an elastoplastic framework as a Drucker-Prager model, Eq. (11), with varying friction μ=μ(I). The typical functional form of μ(I) from Jop et al. (2005) is assumed where μ is bounded by a lower value μ1 and an upper value μ2, in particular,

(19) μ ( I ) = μ 1 + μ 2 - μ 1 I 0 / I + 1 = μ 1 + μ 2 - μ 1 ω p γ ˙ S + 1

where I0 is a constant parameter and for convenience defining ω=I0dgρg. As such, this model has three rheological parameters, μ1, μ2 and ω, in addition to the cohesion qc and the two elastic moduli. In order to treat cohesive problems, i.e., when the pressure p can become negative, the inertial number in Eq. (19) is defined following Berger et al. (2015) and Vo et al. (2020) as

(20) I = γ ˙ S d g p / ρ g

where an effective pressure

(21) p = p + q c / μ 1

is introduced by adding to p the isotropic tensile strength (i.e., the minimal p). Note that, as a result of the particular definitions of p and q in Eqs. (8) and (9), this model is able to retrieve the expected Bagnold solution under (cohesionless) flow on inclined planes when the diagonal stress components can be assumed equal.

Beyond the case of idealized monodisperse granular media, the μ(I)-rheology model in Matter can be considered as simply describing a transition in internal friction from a lower bound μ1 to an upper bound μ2. The rate at which this transition occurs is fully governed by the parameter ω. In applications to natural phenomena, such as snow avalanches, where parameter values are less obvious and not as well documented as in systems like, e.g., spherical glass beads, calibration of ω becomes necessary, provided that μ1 and μ2 are known or can be reasonably inferred.

2.9 Critical state μ(I)-rheology

The critical state μ(I)-rheology introduced by Blatny et al. (2024) is available in Matter for modeling compressible and cohesive granular flow, and the reader is referred to this article for further details and for the validation of its implementation. This model is conceived as a combination of the MCC model from Sect. 2.6 and the μ(I)-rheology from Sect. 2.8. In essence, this model constructs the CSL to be dependent on the inertial number I such that in the flowing limit it retrieves the properties of the μ(I)-rheology. The inertial number is defined similarly as in Eq. (20), using

(22) p = p + β p c

instead of Eq. (21) following an analogous reasoning, and employing the same functional form of μ(I) as in Eq. (19).

2.10 Summary

As a summary, the various constitutive models in the finite strain elastoplastic framework of Matter are listed below with their key characteristics and typical use cases.

  • The von Mises model is suited for ductile materials with negligible pressure effects. It is generally not appropriate for granular media, since it does not include pressure dependence and ignores friction. It is a rate-independent model.

  • The Drucker–Prager model applies to granular soils and sands with friction and, if required, cohesion. It introduces a pressure-dependent yield criterion while remaining rate-independent. Optionally, it can be supplied with strain-softening and a scheme for suppressing volume increase.

  • The Modified Cam–Clay model is used for both cohesionless and cohesive granular media, particularly clays and soils that exhibit significant plastic volumetric changes. It is capable of capturing hardening/softening, and critical state behavior, and is also rate-independent.

  • Overstress models (including Bingham and Herschel–Bulkley) are appropriate for granular suspensions, slurries, or other viscous and creeping flows. They can also be employed for viscous regularization purposes.

  • The μ(I)-rheology describes dense granular flows, both cohesive and cohesionless, by incorporating a shear-rate-dependent friction coefficient.

  • The critical state μ(I)-rheology extends this framework to dense granular flows with significant plastic volumetric changes, such as snow avalanches. It also relies on a shear-rate-dependent friction coefficient.

In addition to being able to combine the solid and liquid granular phase, the elastoplastic MPM approach has some clear advantages over fluid solvers that implement the μ(I)-rheology. First, due to the introduction of elasticity, there is no need for regularization for low inertial numbers as is otherwise required (Barker and Gray2017). Second, no special treatment of the free-surface is necessary as MPM by construction handles this naturally. Third, connectivity to the boundary is not required and lift-offs are trivially handled.

3 Algorithm

In this section, Matter's algorithm is introduced in the context of finite strain elastoplasticity.

The MPM community has distinguished schemes that update the particle stresses before or after the grid velocity updates, the former known as Update Stress First (USF) and the latter as Update Stress Last (USL). The algorithm described here considers USL as well as the Modified USL (MUSL) (Sulsky et al.1995). Notably, USL schemes are by some claimed to be superior to USF in terms of stability and convergence (Wallstedt and Guilkey2008; de Vaucorbeil et al.2020b).

In order to overcome the so-called cell-crossing issues typically associated with the original formulation of MPM, Matter relies on B-spline interpolation functions as proposed by Steffen et al. (2008a). In particular, given a grid spacing Δx, the interpolation function between a grid node i and a particle p may be written

(23) N i ( x p ) = α = 1 d N x p α - x i α Δ x

where α denotes the component. Here, N(u) could, e.g., be the quadratic B-spline

(24) N ( u ) = 3 4 - | u | 2 , if | u | < 1 2 1 2 ( 3 2 - | u | ) 2 , if 1 2 | u | < 3 2 0 , otherwise

as illustrated in Fig. 2. As such, particles are influenced by grid nodes up until a distance 1.5Δx away. Higher-order B-splines are also considered, in particular cubic B-splines, which require an increased local support. Although cubic B-splines provide greater accuracy and smoothness within the interior domain and help mitigate numerical fracture, their performance near boundaries can degrade due to the increased local support required. Consequently, for simulations where near-boundary behavior is critical, quadratic B-splines may offer a more robust and reliable alternative. Other approaches used by the MPM community to suppress cell-crossing instabilities include the Generalized Interpolation Material Point Method (GIMP) (Bardenhagen and Kober2004) and Moving Least Square MPM (MLS-MPM) (Hu et al.2018b).

https://gmd.copernicus.org/articles/18/9149/2025/gmd-18-9149-2025-f02

Figure 2Interpolation functions.

Download

After distributing particles over the domain of the body, they are initiated with a mass mp, an initial volume Vp0, an initial velocity vp0=0 (when initially at rest) and a deformation gradient Fp0=I (when initially undeformed). Then, for each time step n of size Δt, the computational steps are outlined below, and a summary is presented in Algorithm 1.

Algorithm 1An explicit B-spline (M)USL (A)PIC/(A)FLIP MPM scheme.

Initialize mp, Vp, xp according to material domain and density
Initialize vp=0, FE=I
For n=0, …, max time steps:
1. Initiate or adapt grid to material domain
2. Adapt time step: Δt=minCcflΔx/maxp||vpn+1||L2,CelasticΔx/E/ρ
3. Interpolate particle mass and velocity to grid:
(a) min=pmpNi(xpn)
EITHER (b) (if PIC/FLIP) vin=1minpmpvpnNi(xpn)
OR (c) (if APIC/AFLIP) vin=1minpmpvpn+BpnDp-1(xin-xpn)Ni(xpn)
(d) (if MIBF, Sect. 4.3) μb,in=1pNi(xpn)pμm,pNi(xpn)
4. Update grid velocity: vin+1=vin+Δtminfin where fin=-pVp0Ψ(FE,n)FE(FE,n)TNi(xpn)+ming is the grid force
5. Apply boundary conditions on grid: e.g., viDn+1=0 for non-slip
6. Update particle velocity:
(a) vpPIC=igridvin+1Ni(xpn)
(b)vpFLIP=vpn+igrid(vin+1-vin)Ni(xpn)
(c) vpn+1=CtransfervpFLIP+(1-Ctransfer)vpPIC
(d) (if APIC/AFLIP) Bpn+1=igridvin+1(xin-xpn)TNi(xpn)
7. (If MUSL) revisit step 3 by interpolating vpn+1 from step 4 to the grid, thus overwriting vin+1
8. Compute trial elastic strain:
(a) FpE,trial=I+Δtigridvin+1Ni(xpn)TFpE,n
(b) SVD of FpE,trial=UpEΣpE,trial(VpE)T
(c) εpE,trial=lnΣpE,trial
9. If yτ(εpE,trial)>0, perform return mapping: εpE,n+1=RM(εpE,trial,) where RM is the return mapping and update elastic deformation gradient FpE,n+1=UpEeεpE,n+1(VpE)T, otherwise accept trial state.
10. Update positions: xpn+1=xpn+ΔtvpPIC.

3.1 Step 1: initiate or adapt grid

A regular background Eulerian grid is adapted to cover the material domain by an excess given by the support of the chosen B-spline. Typically, the grid cell size Δx is chosen such that there are at least four and eight particles per grid cell in two and three spatial dimensions, respectively. In order to improve computational efficiency, the grid is expanded or contracted to only cover the material domain, keeping Δx constant with time.

3.2 Step 2: update size of time step

The size of the time step is adapted following the Courant–Friedrichs–Lewy (CFL) condition,

(25) Δ t C cfl Δ x max p | | v p n + 1 | | L 2

and is at the same time restricted through the elastic wave speed such that

(26) Δ t C elastic Δ x E / ρ

where Ccfl≤1 and Celastic≤1 are appropriate positive constants chosen to obtain a stable scheme.

3.3 Step 3: transfer mass and velocity from particles to grid

The mass and velocity on each grid node are determined by interpolating the masses and velocities of all particles within the support of the interpolation functions. The grid mass is calculated as

(27) m i n = p = 1 N particles m p N i ( x p n ) .

In the original formulation of MPM (using a PIC or FLIP scheme as will be explained further in Step 6), the grid velocity is

(28) v i n = 1 m i n p = 1 N particles m p v p n N i ( x p n )

which preserves momentum. However, considering velocities as locally affine on each particle, transfer schemes that preserve affine velocity fields can be formulated where

(29) v i n = 1 m i n p = 1 N particles m p v p n + G p n ( x i n - x p n ) N i ( x p n )

with Gp=BpDp-1 similar to a velocity gradient where Dp is similar to an inertia tensor1. It can be shown that Dp is approximately 14(Δx)2I for a uniform grid using quadratic B-splines (Jiang et al.2015; Nguyen et al.2023).

3.4 Step 4: update grid velocity

Assuming a forward Euler time integration, the grid velocity at the next time step is

(30) v i n + 1 = v i n + Δ t m i n f i n

where the grid forces are, using τ=Ψ^(εE)εE=Ψ(FE)FEFET,

(31) f i n = - p = 1 N particles V p 0 Ψ ( F E , n ) F E ( F E , n ) T N i ( x p n ) + m i n g

where Vp0 is the initial particle volume.

3.5 Step 5: apply boundary conditions

Appropriate boundary conditions are enforced on grid velocities viDn+1 where iD denotes the set of grid points inside the domain D given by the level sets describing the objects/terrain. This is outlined in detail in Sect. 4.

3.6 Step 6: transfer grid velocity to particles

Define the particle velocities

(32)vpPIC=igridvin+1Ni(xpn),(33)vpFLIP=vpn+igrid(vin+1-vin)Ni(xpn).

In a PIC scheme, the particle velocity at n+1 is taken as

(34) v p n + 1 = v p PIC

while in a FLIP scheme

(35) v p n + 1 = v p FLIP .

A highly dissipative scheme, PIC does not preserve angular momentum in the grid-to-particle transfer, leading to rotational artifacts. The FLIP scheme partly improves angular momentum conservation and reduces dissipation by only transferring the velocity increments. However, this may promote a more pronounced “ringing instability” (Love and Sulsky2006). Stomakhin et al. (2013) suggested a weighted combination of the PIC and FLIP transfer schemes, creating a trade-off between reducing dissipation associated with PIC on the one hand and suppressing instabilities associated with FLIP on the other hand. In such a PIC-FLIP scheme, the particle velocity at n+1 is taken as

(36)vpn+1=CtransfervpFLIP+(1-Ctransfer)vpPIC(37)=igridvin+1Ni(xpn)+Ctransfer(vpn-igridvinNi(xpn))

where Ctransfer[0,1] sets the PIC-FLIP combination ratio. Lower values of Ctransfer result in more dissipation.

Later, affine PIC (APIC) was proposed by Jiang et al. (2015), conserving angular momentum in both transfers, thus resolving rotations. With a stability similar to PIC without massive dissipation, the dissipation of APIC is comparable to that of FLIP. In an APIC scheme, the particle velocity at n+1 follows Eq. (34) while the particle-to-grid transfer is accomplished through Eq. (29). Therefore, an update of Bp is also necessary, in particular,

(38) B p n + 1 = i v i n + 1 ( x i n - x p n ) T N i ( x p n ) .

Recently, Fei et al. (2021) introduced AFLIP which reduces dissipation further. A generalization of APIC, this was based on following an analogous approach to how PIC was combined with FLIP. In this new transfer scheme, the grid-to-particle transfer can be written exactly as Eq. (36), and using Eq. (38) to update Bp. The parameter Ctransfer now represents an APIC-AFLIP ratio, with Ctransfer=0 meaning pure APIC and Ctransfer=1 meaning pure AFLIP. A choice of Ctransfer closer to unity significantly reduces dissipation compared to APIC.

Matter offers PIC, FLIP, APIC and AFLIP. In the context of USF MPM, these different transfer schemes have been critically compared in Duverger et al. (2024) to which the reader is referred for details. In general, the use of APIC is recommended due to its robustness and strong mathematical foundation, however, in highly dynamic and rate-dependent scenarios where numerical dissipation becomes significant, the AFLIP method is often preferred. Including the older transfer schemes, PIC and FLIP, allows for assessing the sensitivity of the problem to numerical dissipation, which can pose a challenge in MPM simulations. There exist also other recent transfer schemes, e.g., polynomial PIC (Fu et al.2017), which is generalization of APIC using locally polynomial (as opposed to locally affine) approximations to the grid velocity field, and power PIC (Qu et al.2022) based on the power particle idea of de Goes et al. (2015).

3.7 Step 7: re-interpolate grid velocities

When using MUSL (Sulsky et al.1995) instead of USL, we must revisit Step 3 by interpolating vpn+1 from Step 4 to the grid, thus overwriting vin+1. This is an optional step that may enhance the stability of the simulation.

3.8 Step 8: compute trial strain

In an “elastic predictor – plastic corrector” scheme, the deformation gradient is first updated in a trial step, assuming the body deforms purely elastically. In a forward Euler step, the trial step can be written as

(39)FpE,trial=FpE,n+Δtvn+1(xp)FpE,n(40)=I+Δtigridvin+1Ni(xpn)TFpE,n.

The singular value decomposition of the trial elastic deformation gradient is

(41) F p E , trial = U p E , trial Σ p E , trial ( V p E , trial ) T .

Assume an elastic model based on Hencky strain is used such that the trial elastic Hencky strain is given by

(42) ε p E , trial = ln Σ p E , trial

which from a computational perspective can be represented as a d-dimensional vector.

https://gmd.copernicus.org/articles/18/9149/2025/gmd-18-9149-2025-f03

Figure 3Compression of a cube of side length L with E=1 MPa and ν=0.3, using PIC-FLIP with Ctransfer=0.99. (a) Stress-strain curve from finest discretization. (b) Convergence in the relative error of the measured bulk modulus K under finer discretization. Adapted from Blatny (2023).

Download

3.9 Step 9: check yield criterion and return mapping

The Kirchhoff stress τ(εpE,trial) is calculated based on Hencky's elasticity model, and if the yield criterion is satisfied, then

(43) F p E , n + 1 = F p E , trial if y τ ( ε p E , trial ) 0 .

On the other hand, if the yield criterion is not satisfied, plastic deformations occurred, and a projection to the yield surface must be made according to the plastic flow rule as

(44) ε p E , n + 1 = ε p E , trial - Δ t γ ˙ p n + 1 g τ ( ε p E , n + 1 ) τ

which is given here as an implicit equation. If g is constant (e.g., perfect plasticity + associative plastic flow), this becomes a much simpler equation to solve. The elastic deformation gradient at n+1 is then obtained as

(45) F p E , n + 1 = U p E , trial e ε p E , n + 1 V p E , trial T .

3.10 Step 10: update particle positions

The particle positions are updated according to

(46) x p n + 1 = x p n + Δ t v p PIC

regardless of the choice of transfer scheme, whether that is PIC, FLIP, APIC or AFLIP.

4 Terrain and objects

Terrain and objects are described as level sets. This is similar to the treatment in e.g., Zhao et al. (2023a), although only objects with imposed movements are considered in the context of this work. The terrain and objects can either be analytically constructed or provided as .vdb files (OpenVDB2012). Analytically creating a terrain or an object requires defining two functions: (1) an “inside”-function which, given a point in space, checks if the point is inside the object, and (2) a “normal”-function which, given a point on the surface of the object, provides the outward unit normal vector at this point. This can be accomplished by deriving from the provided ObjectGeneral class. For the common problem of a finite and/or moving plate, a special ObjectPlate is available.

As mentioned in Sect. 3.5, boundary conditions are enforced on the grid velocities. Thus, every grid node found to be inside the level sets has its velocity altered according to the specified boundary condition. The different options are listed below.

https://gmd.copernicus.org/articles/18/9149/2025/gmd-18-9149-2025-f04

Figure 4Elastic box with E=1 MPa and ν=0.3 undergoing rotation and translation. The normalized kinetic energy of the solid is plotted, using various particle-grid transfer schemes. Given an imposed initial angular velocity of 1 rad s−1, the material has completed one rotation in 2π≈6 s. The inset plot is a zoomed view in order to distinguish FLIP, APIC and AFLIP.

Download

4.1 No-slip

No-slip boundary conditions are realized by overwriting the grid velocities with the velocity of the object/terrain. In particular, in the case of a stationary object D, the grid nodes inside the D have their velocities updated as

(47) v i D n + 1 = 0 .

4.2 Frictional slip

Frictional slip can also be accomplished. As outlined in Blatny et al. (2024), an approximation to Coulomb's friction law on the grid velocities can be considered. Introducing a boundary friction parameter μb≥0, the velocity v relative to the boundary is obtained as

(48) v i D n + 1 = v T * - μ b | | v N * | | L 2 v T * | | v T * | | L 2 if | | v T * | | L 2 > μ b | | v N * | | L 2 , 0 otherwise .

where v* denotes the relative velocity (at time n+1) before the boundary condition is considered, and vT* and vN* are its tangential and normal components, respectively. In the special case μb=0, the tangential component of the relative velocity remains unchanged while the normal component vanishes. The boundary condition shown in Eq. (48) is typically only applied on grid nodes where vN* indicates movement into the boundary such that the material can separate from the boundary.

https://gmd.copernicus.org/articles/18/9149/2025/gmd-18-9149-2025-f05

Figure 5Illustration of the influence of the particle-grid transfer scheme on the granular collapse. Here, all snapshots are taken at time t=0.22 s with Δt1=0.5Δx/E/ρ. Note that FLIP and AFLIP were used with Ctransfer=0.99. Adapted from Blatny (2023).

Download

4.3 Material-induced boundary friction (MIBF)

In the above situation, the boundary friction is constant in space and time, with μb being a parameter prescribed by the user. Consider an avalanche whose core is a dense granular flow well described by the μ(I)-rheology (see Sect. 2.8 and 2.9). In this situation, one might want the boundary friction to be given directly by the local value of the basal layer's varying (internal) friction μ, consequently giving the user one less parameter to prescribe. More generally, consider the situation where a non-constant material property μm, which may also depend on flow conditions, can be constructed. Such a spatiotemporal frictional boundary condition is accomplished in Matter by interpolating μm to the grid at every time step as shown in Step 3d in Algorithm 1. It is called Material-Induced Boundary Friction (MIBF) because the friction of the boundary is determined by a material property. If μm does not vary in time and space, MIBF reduces to the case of a constant boundary friction.

5 Verification tests

As a simple check of the finite strain elastic Hencky's model, consider here the compression of an elastic box. The volumetric Hencky strain εV=tr(ε) is measured, and according to Eq. (4), the relation -1dtr(τ)=-KεV should hold. Figure 3 shows that the measured stress response is consistent with the imposed elastic model and demonstrates convergence of the measured bulk modulus under finer discretization. For a more detailed analysis of the convergence properties of MPM, the reader is referred to, e.g., Steffen et al. (2008a, b). In particular, it should be noted that the introduction of boundaries, as was needed in this specific example to compress the material, may reduce the rate of convergence. In fact, this may be more pronounced with higher-order B-splines as these increase the local support of the interpolation, thus increasing the geometric error.

In order to evaluate the various particle-grid transfer schemes (PIC, FLIP, APIC, AFLIP) and to which extent they suffer from numerical dissipation, a simple problem of an elastic box undergoing translation and rotation in the absence of gravity is considered. This is sketched in Fig. 4 which also shows the evolution of the kinetic energy with time as the solid undergoes several rotations. Clearly, APIC and AFLIP conserve the kinetic energy well and much better than both PIC and FLIP, with AFLIP conserving the most energy. Notably, PIC suffers from severe dissipation and is unable to complete a full rotation, instead continuing only with translation corresponding to the drop in kinetic energy by 25 % shown in Fig. 4.

https://gmd.copernicus.org/articles/18/9149/2025/gmd-18-9149-2025-f06

Figure 6Verification of level set boundaries. A particle initially at rest at (−1, 1) is constrained to a frictionless boundary given by y=x2. The relative error between the measured bottom velocity and the expected value vf=2g is plotted. Two different simulations are performed, one with an analytically specified level set and another with an OpenVDB level set.

Download

The above rotating box was a simple toy problem designed specifically to demonstrate the potentially severe effect of particle-grid transfer schemes in systems involving rotations. Choosing a minimally dissipative transfer scheme is especially important when modeling granular mechanics and flow problems as these are typically highly dynamic systems. Even in the relatively simple case of granular collapse under gravity, clear differences can be observed depending on the transfer scheme used, which is demonstrated in Fig. 5. This figure shows a collapse of a cohesionless Drucker-Prager granular material (see Sect. 2.5) at a specific time slightly before the material should come to rest on the horizontal non-slip surface. With a reasonable choice of Δt restricted by the elastic wave speed, it is observed that FLIP, APIC and AFLIP give approximately similar results, while PIC induces too much numerical dissipation resulting in a delayed and viscous response. If Δt is forced 10 times smaller, 10 times as many particle-grid transfers occur, thus inducing more numerical dissipation. In that case, it can be observed from the last row in Fig. 5 that only AFLIP is visually unaffected by this large increase in particle-grid transfers.

Various aspects of the implementation of the boundary conditions are checked in Figs. 68, respectively. Figure 6 shows that no significant differences between analytically specified level sets and OpenVDB level sets can be observed in this specific case of a particle following a frictionless parabola under gravity. In particular, both approaËches lead to second-order convergence under mesh refinement. In the case of frictional slip, Fig. 7 demonstrates that the material will slip if and only if θ>tan (μb). Furthermore, it confirms that the speed of the material sliding down various inclinations is consistent with the expected value from Coulomb's friction law. Figure 8 shows a particular variation of the setup described in the previous figure, where an artificially constructed material property μm=0.1t is used in the MIBF framework to provide a non-constant boundary friction μb. Although time is not a material property, such as, e.g., internal friction, this particular choice of a material property to use in MIBF allows for an analytical verification of its implementation.

https://gmd.copernicus.org/articles/18/9149/2025/gmd-18-9149-2025-f07

Figure 7Verification of frictional boundary conditions. Mean position x (dots) of a stiff box sliding on a frictional plane with μb=tan(15°) on various inclinations θ. Analytical solutions (continuous lines) are given by x=max0,12gsinθ-μbcosθt2.

Download

https://gmd.copernicus.org/articles/18/9149/2025/gmd-18-9149-2025-f08

Figure 8Verification of MIBF implementation. Same setup as Fig. 7, but now MIBF is used where μm=0.1t is given as an artificially constructed material property which at each time step is interpolated to the grid as shown in Step 3d in Algorithm 1. Analytical solutions (continuous lines) are given by x=max0,12g(sinθ-130.1tcosθ)t2.

Download

6 Implementation, dependencies and performance

Matter is implemented in C++ and parallelized on shared memory using OpenMP (Dagum and Menon1998). The algorithm involves nested loops over particles and grid nodes. In order to reduce the computational complexity, these are generally implemented as outer loops over particles with the inner loop only summing over the grid nodes within the local support of the interpolation functions. Vectors and tensors are handled using the header-only linear algebra library Eigen (Gael and Benoit2010).

Depending on the problem at hand, the initial sampling of particle positions can affect the results. Regular sampling of the particles is generally discouraged as this may in some cases promote unwanted artifacts during deformation. To this end, Poisson disk distribution sampling (Bridson2007) is offered in Matter which relies on the single-header zero-dependencies implementation tph_poisson (Hinks2018). If using the provided particle sampling functions samplingParticles, the grid size Δx is determined to ensure a user-provided number of particles per grid cell (typically at least 4 in two dimensions and 8 in three dimensions). Particle data are saved at every chosen time frame as binary .ply files using the single-header zero-dependency code tinyply (Diakopoulos2018), In fact, the only required non-header-only dependency in addition to OpenMP is CMake (Hoffman2000). OpenVDB (OpenVDB2012) is only required in the case where an object or terrain level set is provided as a .vdb file. Such files may also be used to provide the level set which defines the domain of particle sampling. To this end, the samplingParticlesVdb function takes a .vdb file as input.

Table 1Timing of a three-dimensional 0.1 m × 0.05 m × 0.1 m confined granular collapse, using E=1 MPa, ν=0.3 ρ=1000 kg m−3 and the cohesionless Drucker–Prager model (Sect. 2.5) with μ=0.58. The computation time is measured until t=0.4 s after equilibrium was reached. Initial discretization with 8 particles per grid cell volume Δx3. Using 8 threads in all cases, Computer A is a 2018 desktop workstation with Intel Xeon Gold 6136 CPUs with 192 GB RAM and Computer B is a 2023 Apple MacBook M3 laptop with 8 GB RAM.

Download Print Version | Download XLSX

The implementation described above, along with the use of OpenVDB for complex terrain handling and OpenMP for shared-memory parallelization, contributes to the computational efficiency of the code. Table 1 lists some computation times for a granular collapse under gravity on a horizontal plane using an increasingly fine discretization. For the finest discretization (here 2.6 million particles), Fig. 9 shows the speedup with increasing threads, suggesting a max speedup of not more than 6. In comparison, de Vaucorbeil et al. (2021) reports speedups on Karamelo with shared-memory parallelization to around 8. Speedup may depend on the system and compiler, and a detailed analysis of this has not been conducted.

https://gmd.copernicus.org/articles/18/9149/2025/gmd-18-9149-2025-f09

Figure 9Speedup with number of threads in the simulation with 2.6M particles presented in last row in Table 1 using Computer A.

Download

7 Examples

Figures 1012 demonstrate some three-dimensional granular collapse and flow simulations using different constitutive models on small/simple and large/complex terrains. Figure 10 shows a cohesive granular collapse where the material is described by the Drucker–Prager model of Sect. 2.5. In addition to the tilted bottom plate, the collapse is restricted by a back wall and two side walls, all using the available plate objects described in Sect. 4. The material is visualized according to the plastic shear strain rate, highlighting the shear bands along which significant deformation occurs during the collapse. A similar visualization of the plastic shear strain rate is also used in Fig. 11 which shows granular flow through a silo where the material is described by the elastoplastic μ(I)-rheology of Sect. 2.8. Here, the silo is created analytically, specifically as a hyperbolic tangent curve x=tanh(y)+1 rotated along the vertical y-axis with a cut y=ycut to define the silo opening through which the material flows. Using a mountain provided as a .vdb-file, Fig. 12 shows the flow of a material described by an overstress model (Sect. 2.7) with a Drucker–Prager yield. Enforcing MIBF, the non-constant internal friction is used as the basal friction. Notably, Fig. 12 also demonstrates that particle lift-off from the terrain is possible.

https://gmd.copernicus.org/articles/18/9149/2025/gmd-18-9149-2025-f10

Figure 10Three-dimensional cohesive granular collapse on a 10° tilted non-slip terrain using the cohesive Drucker-Prager model (μ=0.58 and qc=100 Pa). The initial dimensions of the granular column was 20×14×10 cm, discretized with 1.6 million particles with initially 8 particles per grid cell. The displayed snapshots are taken at 0.1, 0.2 and 0.3 s, respectively, after release. Using 8 Intel Xeon Gold 6136 CPUs, the compute time between each of these snapshots were approximately 1 h and 10 min with Δt restricted by the choice of E=1 MPa and ρ=1000 kg m−3. The left side wall is not shown in order to visualize the material inside. The material is colored according to its plastic shear strain rate γ˙S, with brighter (whiter) colors representing higher strain rates, thus highlighting the shear bands.

Download

https://gmd.copernicus.org/articles/18/9149/2025/gmd-18-9149-2025-f11

Figure 11Three-dimensional flow from a silo using the elastoplastic μ(I)-rheology (μ1=0.58, μ2=0.84, ω=2.2 kg−½ m½). With a maximum radius of 2 m and height of 4 m, the silo is elevated 4 m above the ground where the deposit comes to rest. Only half of the silo boundary is shown. The displayed snapshots are taken at 50, 100 and 150 s, respectively, after release. With a discretization of 1 million particles, initially 8 particles per grid cell, running on 8 Intel Xeon Gold 6136 CPUs, the compute time between each snapshot was approximately 12 h with Δt restricted by the choice of E=1 MPa and ρ=1550 kg m−3. The material is colored according to its plastic shear strain rate γ˙S, with brighter (whiter) colors representing higher strain rates, thus highlighting the shear bands.

Download

https://gmd.copernicus.org/articles/18/9149/2025/gmd-18-9149-2025-f12

Figure 12Three-dimensional flow on complex terrain with MIBF, using an overstress model with (tvisc=0.12 s, s=1) combined with a non-cohesive Drucker-Prager yield (μ=0.36). The displayed snapshots are taken at 6, 10 and 14 s, respectively, after release. Using 425k particles and Δx=0.43 m (with initially 8 particles per grid cell) the computation time from the leftmost to rightmost snapshot during 8 s was 47 min on 8 Intel Xeon Gold 6136 CPUs.

Download

8 Concluding remarks

This article has presented Matter, an open-source MPM solver with a wide selection of elasto-viscoplastic models to describe the mechanics and rheology of granular media. The few cases presented in this article provide a glimpse into its capabilities in simulating granular media, from small-scale laboratory settings to flow on large-scale complex terrains. This includes terrains with various boundary conditions, including the proposed method of material-induced boundary friction. Built on a verified finite strain elastoplastic framework, Matter leverages recent advances in MPM particle-grid transfer schemes that reduce numerical dissipation.

The main limitations of the software should be highlighted. For example, modeling granular media immersed in or interacting with water or other fluids is beyond the scope of this software. Along these lines, the MPM community has proposed various strategies for handling multiple phases on one or more grids (e.g., Yerro et al.2015; Higo et al.2025), or proposed CFD coupling strategies (e.g., Higo et al.2010; Tran et al.2024). Moreover, including more than one type of material in the same simulation is currently not supported. Nevertheless, different constitutive parameters can be assigned to different particles with minimal modifications to the code. In addition, schemes to circumvent volumetric locking could also be considered in the future, in particular with the simple and elegant method of Zhao et al. (2023b). Although Matter represents a lightweight and efficient option for most problems that can be run on laptops and desktops, its current implementation is not optimized for sparse problems for which excessive simulation times can be witnessed. This could be addressed primarily by transitioning away from dense Eigen grids, however, the current strategy ensures a readable and adaptable code.

With the growing interest in understanding and modeling cohesive granular flow, particularly cohesive flows, this software aims to be a useful tool for both fundamental research and practical applications. This includes real-scale natural hazard applications, e.g., snow avalanches. While such mass movements are typically assessed with depth- or thickness-integrated models (Sampl and Zwinger2004; Christen et al.2010; Tonnel et al.2023), Matter represents an alternative three-dimensional approach to simulate these processes. Future developments aim to incorporate more advanced constitutive models for granular rheology, including non-local models, which are not yet considered. The community is also encouraged to contribute by integrating their own models into the framework.

Code and data availability

The source code and user manual is available at https://doi.org/10.5281/zenodo.15052337 and https://github.com/larsblatny/matter/ (Blatny and Gaume2025) under the GPL-3.0 license.

Data availability

No data sets were used in this article.

Author contributions

LB initiated and developed the software, and wrote the paper. JG supervised the work and reviewed the manuscript.

Competing interests

The contact author has declared that neither of the authors has any competing interests.

Disclaimer

The software is provided “as is” with no guarantees of any kind. The creators are not responsible for any issues, damages, or losses that may result from using the software.

Publisher's note: Copernicus Publications remains neutral with regard to jurisdictional claims made in the text, published maps, institutional affiliations, or any other geographical representation in this paper. While Copernicus Publications makes every effort to include appropriate place names, the final responsibility lies with the authors. Views expressed in the text are those of the authors and do not necessarily reflect the views of the publisher.

Acknowledgements

The authors wish to thank Tobias Verheijen for improving return mapping schemes, as well as everyone who has inspired the development of Matter, in particular its users who have shared valuable feedback.

Review statement

This paper was edited by Thomas Poulet and reviewed by two anonymous referees.

References

Abramian, A., Staron, L., and Lagrée, P.-Y.: The Slumping of a Cohesive Granular Column: Continuum and Discrete Modeling, J. Rheol., 64, 1227–1235, https://doi.org/10.1122/8.0000049, 2020. a

Anura3D: Anura3D, GibHub [code], https://github.com/Anura3D (last access: 26 September 2025), 2017. a

Badetti, M., Fall, A., Hautemayou, D., Chevoir, F., Aimedieu, P., Rodts, S., and Roux, J.-N.: Rheology and Microstructure of Unsaturated Wet Granular Materials: Experiments and Simulations, J. Rheol., 62, 1175–1186, https://doi.org/10.1122/1.5026979, 2018. a

Bardenhagen, S. G. and Kober, E. M.: The Generalized Interpolation Material Point Method, Comput. Model. Eng. Sci., 5, 477–496, https://doi.org/10.3970/cmes.2004.005.477, 2004. a, b

Barker, T. and Gray, J. M. N. T.: Partial Regularisation of the Incompressible μ(I)-Rheology for Granular Flow, J. Fluid Mech., 828, 5–32, https://doi.org/10.1017/jfm.2017.428, 2017. a

Berger, N., Azéma, E., Douce, J.-F., and Radjai, F.: Scaling Behaviour of Cohesive Granular Flows, Europhys. Lett., 112, 64004, https://doi.org/10.1209/0295-5075/112/64004, 2015. a, b

Bingham, E.: Fluidity and Plasticity, McGraw-Hill, 1922. a

Blatny, L. and Gaume, J.: Matter, Zenodo [code], https://doi.org/10.5281/zenodo.15052337, 2025 (code also available at: https://github.com/larsblatny/matter/, last access: 26 September 2025). a, b

Blatny, L., Löwe, H., Wang, S., and Gaume, J.: Computational Micromechanics of Porous Brittle Solids, Comput. Geotech., 140, 104284, https://doi.org/10.1016/j.compgeo.2021.104284, 2021. a

Blatny, L., Löwe, H., and Gaume, J.: Microstructural Controls on the Plastic Consolidation of Porous Brittle Solids, Acta Materialia, 250, 118861, https://doi.org/10.1016/j.actamat.2023.118861, 2023. a, b

Blatny, L., Gray, J., and Gaume, J.: A Critical State μ(I)-Rheology Model for Cohesive Granular Flows, J. Fluid Mech., 997, A67, https://doi.org/10.1017/jfm.2024.643, 2024. a, b, c

Blatny, L. K. U.: Modeling the Mechanics and Rheology of Porous and Granular Media: An Elastoplastic Continuum Approach, PhD thesis, EPFL, Lausanne, https://doi.org/10.5075/EPFL-THESIS-10267, 2023. a, b, c

Brackbill, J., Kothe, D., and Ruppel, H.: Flip: A Low-Dissipation, Particle-in-Cell Method for Fluid Flow, Comput. Phys. Commun., 48, 25–38, https://doi.org/10.1016/0010-4655(88)90020-3, 1988. a

Bridson, R.: Fast Poisson Disk Sampling in Arbitrary Dimensions, ACM SIGGRAPH 2007 Sketches Program, https://www.cs.ubc.ca/~rbridson/docs/bridson-siggraph07-poissondisk.pdf (last access: 26 September 2025), 2007. a

Bruhns, O., Xiao, H., and Meyers, A.: Self-Consistent Eulerian Rate Type Elasto-Plasticity Models Based upon the Logarithmic Stress Rate, Int. J. Plastic., 15, 479–520, https://doi.org/10.1016/S0749-6419(99)00003-0, 1999. a

Chen, H., Zhao, S., and Zhao, J.: A Sparse-Memory-Encoding GPU-MPM Framework for Large-Scale Simulations of Granular Flows, Comput. Geotech., 180, 107113, https://doi.org/10.1016/j.compgeo.2025.107113, 2025.  a

Christen, M., Kowalski, J., and Bartelt, P.: RAMMS: Numerical Simulation of Dense Snow Avalanches in Three-Dimensional Terrain, Cold Reg. Sci. Technol., 63, 1–14, https://doi.org/10.1016/j.coldregions.2010.04.005, 2010. a

Coombs, W. M. and Augarde, C. E.: AMPLE: A Material Point Learning Environment, Adv. Eng. Softw., 139, 102748, https://doi.org/10.1016/j.advengsoft.2019.102748, 2020. a

Cremonesi, M., Franci, A., Idelsohn, S., and Oñate, E.: A State of the Art Review of the Particle Finite Element Method (PFEM), Arch. Comput. Meth. Eng., 27, 1709–1735, https://doi.org/10.1007/s11831-020-09468-4, 2020. a

Dadvand, P., Rossi, R., and Oñate, E.: An Object-oriented Environment for Developing Finite Element Codes for Multi-disciplinary Applications, Arch. Comput. Meth. Eng., 17, 253–297, https://doi.org/10.1007/s11831-010-9045-2, 2010. a

Dagum, L. and Menon, R.: OpenMP: an industry standard API for shared-memory programming, IEEE Comput. Sci. Eng., 5, 46–55, 1998. a

Davison De St. Germain, J., McCorquodale, J., Parker, S., and Johnson, C.: Uintah: A Massively Parallel Problem Solving Environment, in: Proceedings the Ninth International Symposium on High-Performance Distributed Computing, IEEE Comput. Soc., Pittsburgh, PA, USA, 33–41, ISBN 978-0-7695-0783-5, https://doi.org/10.1109/HPDC.2000.868632, 2000. a

de Goes, F., Wallez, C., Huang, J., Pavlov, D., and Desbrun, M.: Power Particles: An Incompressible Fluid Solver Based on Power Diagrams, ACM T. Graph., 34, 1–11, https://doi.org/10.1145/2766901, 2015. a

de Vaucorbeil, A., Nguyen, V. P., and Hutchinson, C. R.: A Total-Lagrangian Material Point Method for Solid Mechanics Problems Involving Large Deformations, Comput. Meth. Appl. Mech. Eng., 360, 112783, https://doi.org/10.1016/j.cma.2019.112783, 2020a. a

de Vaucorbeil, A., Nguyen, V. P., Sinaie, S., and Wu, J. Y.: Material Point Method after 25 Years: Theory, Implementation, and Applications, in: Advances in Applied Mechanics, vol. 53, Elsevier, 185–398, ISBN 978-0-12-820989-9, https://doi.org/10.1016/bs.aams.2019.11.001, 2020b. a, b, c, d

de Vaucorbeil, A., Nguyen, V. P., and Nguyen-Thanh, C.: Karamelo: An Open Source Parallel C++ Package for the Material Point Method, Comput. Part. Mech., 8, 767–789, https://doi.org/10.1007/s40571-020-00369-8, 2021. a, b

Diakopoulos, D.: Tinyply, GitHub [code], https://github.com/ddiakopoulos/tinyply (last access: 26 September 2025), 2018. a

Drucker, D. and Prager, W.: Soil Mechanics and Plastic Analysis or Limit Design, Quart. Appl. Math., 10, 157–165, 1952. a

Dunatunga, S. and Kamrin, K.: Continuum Modelling and Simulation of Granular Flows through Their Many Phases, Journal of Fluid Mechanics, 779, 483–513, https://doi.org/10.1017/jfm.2015.383, 2015. a

Duverger, S., Duriez, J., Philippe, P., and Bonelli, S.: Critical Comparison of Motion Integration Strategies and Discretization Choices in the Material Point Method, Arch. Comput. Meth. Eng., https://doi.org/10.1007/s11831-024-10170-y, 2024. a

Fei, Y., Guo, Q., Wu, R., Huang, L., and Gao, M.: Revisiting Integration in the Material Point Method: A Scheme for Easier Separation and Less Dissipation, ACM T. Graph., 40, 1–16, https://doi.org/10.1145/3450626.3459678, 2021. a, b, c

Fu, C., Guo, Q., Gast, T., Jiang, C., and Teran, J.: A Polynomial Particle-in-Cell Method, ACM T. Graph., 36, 1–12, https://doi.org/10.1145/3130800.3130878, 2017. a

Gael, G. and Benoit, J.: Eigen, http://eigen.tuxfamily.org (last access: 26 September 2025), 2010. a

Gao, M., Wang, X., Wu, K., Pradhana, A., Sifakis, E., Yuksel, C., and Jiang, C.: GPU Optimization of Material Point Methods, ACM T. Graph., 37, 1–12, https://doi.org/10.1145/3272127.3275044, 2018. a

Gaume, J., Gast, T., Teran, J., van Herwijnen, A., and Jiang, C.: Dynamic Anticrack Propagation in Snow, Nat. Commun., 9, 3047, https://doi.org/10.1038/s41467-018-05181-w, 2018. a

GDR MiDi: On Dense Granular Flows, Eur. Phys. J. E, 14, 341–365, https://doi.org/10.1140/epje/i2003-10153-0, 2004. a, b

Harlow, F. H.: The Particle-in-Cell Computing Method for Fluid Dynamics, Meth. Comput. Phys., 3, 319–343, 1964. a

Heeres, O. M., Suiker, A. S. J., and De Borst, R.: A Comparison between the Perzyna Viscoplastic Model and the Consistency Viscoplastic Model, Eur. J. Mech. A, 21, 1–12, https://doi.org/10.1016/S0997-7538(01)01188-3, 2002. a

Herschel, W. H. and Bulkley, R.: Konsistenzmessungen von Gummi-Benzollösungen, Kolloid-Zeitschrift, 39, 291–300, https://doi.org/10.1007/BF01432034, 1926. a

Higo, Y., Oka, F., Kimoto, S., Morinaka, Y., Goto, Y., and Chen, Z.: A Coupled MPM-FDM Analysis Method for Multi-Phase Elasto-Plastic Soils, Soils Foundat., 50, 515–532, https://doi.org/10.3208/sandf.50.515, 2010. a

Higo, Y., Takegawa, Y., Zhu, F., and Uchiyama, D.: A Three-Phase Two-Point MPM for Large Deformation Analysis of Unsaturated Soils, Comput. Geotech., 177, 106860, https://doi.org/10.1016/j.compgeo.2024.106860, 2025. a

Hinks, T.: Tph_poisson, GitHub [code], https://github.com/thinks/poisson-disk-sampling (last access: 26 September 2025), 2018. a

Hoffman, W.: CMake, https://cmake.org/ (last access: 26 September 2025), 2000. a

Hu, Y., Fang, Y., Ge, Z., Qu, Z., Zhu, Y., Pradhana, A., and Jiang, C.: A Moving Least Squares Material Point Method with Displacement Discontinuity and Two-Way Rigid Body Coupling, ACM T. Graph., 37, 1–14, https://doi.org/10.1145/3197517.3201293, 2018a. a

Hu, Y., Fang, Y., Ge, Z., Qu, Z., Zhu, Y., Pradhana, A., and Jiang, C.: A Moving Least Squares Material Point Method with Displacement Discontinuity and Two-Way Rigid Body Coupling, ACM T. Graph., 37, 1–14, https://doi.org/10.1145/3197517.3201293, 2018b. a

Hu, Y., Li, T.-M., Anderson, L., Ragan-Kelley, J., and Durand, F.: Taichi: A Language for High-Performance Computation on Spatially Sparse Data Structures, ACM T. Graph., 38, 1–16, https://doi.org/10.1145/3355089.3356506, 2019. a

Iaconeta, I., Larese, A., Rossi, R., and Oñate, E.: A Stabilized Mixed Implicit Material Point Method for Non-Linear Incompressible Solid Mechanics, Computat. Mech., 63, 1243–1260, https://doi.org/10.1007/s00466-018-1647-9, 2019. a

Idelsohn, S., Oñate, E., and Pin, F. D.: The Particle Finite Element Method: A Powerful Tool to Solve Incompressible Flows with Free-Surfaces and Breaking Waves, Int. J. Numer. Meth. Eng., 61, 964–989, https://doi.org/10.1002/nme.1096, 2004. a

Jiang, C., Schroeder, C., Selle, A., Teran, J., and Stomakhin, A.: The Affine Particle-in-Cell Method, ACM T. Graph., 34, 1–10, https://doi.org/10.1145/2766996, 2015. a, b

Jiang, C., Schroeder, C., Teran, J., Stomakhin, A., and Selle, A.: The Material Point Method for Simulating Continuum Materials, in: ACM SIGGRAPH 2016 Courses, SIGGRAPH '16, Association for Computing Machinery, New York, NY, USA, ISBN 978-1-4503-4289-6, https://doi.org/10.1145/2897826.2927348, 2016. a

Jiang, C., Schroeder, C., and Teran, J.: An Angular Momentum Conserving Affine-Particle-in-Cell Method, J. Comput. Phys., 338, 137–164, https://doi.org/10.1016/j.jcp.2017.02.050, 2017. a

Jop, P., Forterre, Y., and Pouliquen, O.: Crucial Role of Sidewalls in Granular Surface Flows: Consequences for the Rheology, J. Fluid Mech., 541, 167, https://doi.org/10.1017/S0022112005005987, 2005. a

Jop, P., Forterre, Y., and Pouliquen, O.: A Constitutive Law for Dense Granular Flows, Nature, 441, 727–730, https://doi.org/10.1038/nature04801, 2006. a, b

Khamseh, S., Roux, J.-N., and Chevoir, F.: Flow of Wet Granular Materials: A Numerical Study, Phys. Rev. E, 92, 022201, https://doi.org/10.1103/PhysRevE.92.022201, 2015. a

Klár, G.: Simulation of Granular Media with the Material Point Method, PhD thesis, UCLA, 2016. a

Ku, Q., Zhao, J., Mollon, G., and Zhao, S.: Compaction of Highly Deformable Cohesive Granular Powders, Powder Technol., 421, 118455, https://doi.org/10.1016/j.powtec.2023.118455, 2023. a

Kumar, K., Salmond, J., Kularathna, S., Wilkes, C., Tjung, E., Biscontin, G., and Soga, K.: Scalable and Modular Material Point Method for Large-Scale Simulations, in: 2nd International Conference on the Material Point Method for Modeling Soil-Water-Structure Interaction, arXiv [preprint], https://doi.org/10.48550/ARXIV.1909.13380, 2019. a

Lee, E. H.: Elastic-Plastic Deformation at Finite Strains, J. Appl. Mech., 36, 1–6, https://doi.org/10.1115/1.3564580, 1969. a

Love, E. and Sulsky, D.: An Unconditionally Stable, Energy–Momentum Consistent Implementation of the Material-Point Method, Comput. Meth. Appl. Mech. Eng., 195, 3903–3925, https://doi.org/10.1016/j.cma.2005.06.027, 2006. a, b

Macaulay, M. and Rognon, P.: Viscosity of Cohesive Granular Flows, Soft Matter, 17, 165–173, https://doi.org/10.1039/D0SM01456G, 2021. a

Mandal, S., Nicolas, M., and Pouliquen, O.: Insights into the Rheology of Cohesive Granular Media, P. Natl. Acad. Sci. USA, 117, 8366–8373, https://doi.org/10.1073/pnas.1921778117, 2020. a

Mandal, S., Nicolas, M., and Pouliquen, O.: Rheology of Cohesive Granular Media: Shear Banding, Hysteresis, and Nonlocal Effects, Phys. Rev. X, 11, 021017, https://doi.org/10.1103/PhysRevX.11.021017, 2021. a

Moresi, L., Dufour, F., and Mühlhaus, H.-B.: A Lagrangian Integration Point Finite Element Method for Large Deformation Modeling of Viscoelastic Geomaterials, J. Comput. Phys., 184, 476–497, https://doi.org/10.1016/S0021-9991(02)00031-1, 2003. a

Nairn, J. A.: NairnMPM, GitHub [code], https://github.com/nairnj/nairn-mpm-fea (last access: 26 September 2025), 2015. a

Neto, E. A. d. S., Perić, D., and Owen, D. R. J.: Computational Methods for Plasticity: Theory and Applications, Wiley, Chichester, West Sussex, UK, ISBN 978-0-470-69452-7, 2008. a

Nguyen, V. P., de Vaucorbeil, A., and Bordas, S.: The Material Point Method: Theory, Implementations and Applications, Scientific Computation, Springer International Publishing, Cham, ISBN 978-3-031-24069-0, https://doi.org/10.1007/978-3-031-24070-6, 2023. a, b, c

Oliver, J., Cante, J. C., Weyler, R., González, C., and Hernandez, J.: Particle Finite Element Methods in Solid Mechanics Problems, in: Computational Plasticity, vol. 7, edited by: Oñate, E. and Owen, R., Springer Netherlands, Dordrecht, 87–103, ISBN 978-1-4020-6576-7, https://doi.org/10.1007/978-1-4020-6577-4_6, 2007. a

OpenVDB: OpenVDB, http://www.openvdb.org (last access: 26 September 2025), 2012. a, b

Ortiz, M. and Pandolfi, A.: A Variational Cam-clay Theory of Plasticity, Comput. Meth. Appl. Mech. Eng., 193, 2645–2666, https://doi.org/10.1016/j.cma.2003.08.008, 2004. a

Perić, D.: On a Class of Constitutive Equations in Viscoplasticity: Formulation and Computational Issues, Int. J. Numer. Meth. Eng., 36, 1365–1393, https://doi.org/10.1002/nme.1620360807, 1993. a, b

Perzyna, P.: The Constitutive Equations for Rate Sensitive Plastic Materials, Quart. Appl. Math., 20, 321–332, https://doi.org/10.1090/qam/144536, 1963. a

Perzyna, P.: Fundamental Problems in Viscoplasticity, in: Advances in Applied Mechanics, vol. 9, Elsevier, 243–377, ISBN 978-0-12-002009-6, https://doi.org/10.1016/S0065-2156(08)70009-7, 1966. a

Pradhana, A.: Multiphase Simulation Using Material Point Method, PhD thesis, UCLA, 2017. a, b

Qu, Z., Li, M., De Goes, F., and Jiang, C.: The Power Particle-in-Cell Method, ACM Transactions on Graphics, 41, 1–13, https://doi.org/10.1145/3528223.3530066, 2022. a

Radjai, F. and Richefeu, V.: Bond Anisotropy and Cohesion of Wet Granular Materials, Philos. T. Roy. Soc. A, 367, 5123–5138, https://doi.org/10.1098/rsta.2009.0185, 2009. a

Radjai, F., Roux, J.-N., and Daouadji, A.: Modeling Granular Materials: Century-Long Research across Scales, J. Eng. Mech., 143, 04017002, https://doi.org/10.1061/(ASCE)EM.1943-7889.0001196, 2017. a

Raymond, S. J., Jones, B., and Williams, J. R.: A Strategy to Couple the Material Point Method (MPM) and Smoothed Particle Hydrodynamics (SPH) Computational Techniques, Comput. Part. Mech., 5, 49–58, https://doi.org/10.1007/s40571-016-0149-9, 2018. a

Rognon, P. G., Roux, J.-N., Wolf, D., Naaïm, M., and Chevoir, F.: Rheophysics of Cohesive Granular Materials, Europhys. Lett., 74, 644–650, https://doi.org/10.1209/epl/i2005-10578-y, 2006. a

Rognon, P. G., Roux, J.-N., Naaïm, M., and Chevoir, F.: Dense Flows of Cohesive Granular Materials, J. Fluid Mech., 596, 21–47, https://doi.org/10.1017/S0022112007009329, 2008. a

Roscoe, K. H. and Burland, J. B.: On the Generalized Stress-Strain Behaviour of Wet Clay, in: Engineering Plasticity, Cambridge University Press, Cambridge, UK, 535–609, 1968. a

Sampl, P. and Zwinger, T.: Avalanche Simulation with SAMOS, Ann. Glaciol., 38, 393–398, https://doi.org/10.3189/172756404781814780, 2004. a

Schofield, A. N. and Wroth, P.: Critical State Soil Mechanics, McGraw-Hill, London, 1968. a

Simo, J. C.: Algorithms for Static and Dynamic Multiplicative Plasticity That Preserve the Classical Return Mapping Schemes of the Infinitesimal Theory, Comput. Meth. Appl. Mech. Eng., 99, 61–112, https://doi.org/10.1016/0045-7825(92)90123-2, 1992. a

Sołowski, W. T., Berzins, M., Coombs, W. M., Guilkey, J. E., Möller, M., Tran, Q. A., Adibaskoro, T., Seyedan, S., Tielen, R., and Soga, K.: Material Point Method: Overview and Challenges Ahead, in: Advances in Applied Mechanics, vol. 54, Elsevier, 113–204, ISBN 978-0-323-88519-5, https://doi.org/10.1016/bs.aams.2020.12.002, 2021. a, b

Steffen, M., Kirby, R. M., and Berzins, M.: Analysis and Reduction of Quadrature Errors in the Material Point Method (MPM), Int. J. Numer. Meth. Eng., 76, 922–948, https://doi.org/10.1002/nme.2360, 2008a. a, b, c

Steffen, M., Wallstedt, P. C., Guilkey, J. E., Kirby, R. M., and Berzins, M.: Examination and Analysis of Implementation Choices within the Material Point Method (MPM), Comput. Model. Eng. Sci., 31, 107–128, https://doi.org/10.3970/cmes.2008.031.107, 2008b. a

Stomakhin, A., Schroeder, C., Chai, L., Teran, J., and Selle, A.: A Material Point Method for Snow Simulation, ACM T. Graph., 32, 1–10, https://doi.org/10.1145/2461912.2461948, 2013. a

Sulsky, D., Chen, Z., and Schreyer, H. L.: A Particle Method for History-Dependent Materials, Comput. Meth. Appl. Mech. Eng., 118, 179–196, https://doi.org/10.1016/0045-7825(94)90112-0, 1994. a

Sulsky, D., Zhou, S.-J., and Schreyer, H. L.: Application of a Particle-in-Cell Method to Solid Mechanics, Comput. Phys. Commun., 87, 236–252, https://doi.org/10.1016/0010-4655(94)00170-7, 1995. a, b

Tian, C.: The Ratio of Out-of-Plane to in-Plane Stresses for Plane Strain Problems, Meccanica, 44, 105–107, https://doi.org/10.1007/s11012-008-9168-9, 2009. a

Tonnel, M., Wirbel, A., Oesterle, F., and Fischer, J.-T.: AvaFrame com1DFA (v1.3): A Thickness-Integrated Computational Avalanche Module – Theory, Numerics, and Testing, Geosci. Model Dev., 16, 7013–7035, https://doi.org/10.5194/gmd-16-7013-2023, 2023. a

Tran, Q. A., Grimstad, G., and Ghoreishian Amiri, S. A.: MPMICE: A Hybrid MPM-CFD Model for Simulating Coupled Problems in Porous Media. Application to Earthquake-induced Submarine Landslides, Int. J. Numer. Meth. Eng., 125, e7383, https://doi.org/10.1002/nme.7383, 2024. a

Vacondio, R., Altomare, C., De Leffe, M., Hu, X., Le Touzé, D., Lind, S., Marongiu, J.-C., Marrone, S., Rogers, B. D., and Souto-Iglesias, A.: Grand Challenges for Smoothed Particle Hydrodynamics Numerical Schemes, Comput. Part. Mech., 8, 575–588, https://doi.org/10.1007/s40571-020-00354-1, 2021. a

Vo, T. T., Nezamabadi, S., Mutabaruka, P., Delenne, J.-Y., and Radjai, F.: Additive Rheology of Complex Granular Flows, Nat. Commun., 11, 1476, https://doi.org/10.1038/s41467-020-15263-3, 2020. a, b

von Mises, R.: Mechanik der festen Körper im plastisch- deformablen Zustand, Nachrichten von der Gesellschaft der Wissenschaften zu Göttingen, Mathematisch-Physikalische Klasse, 582–592, 1913.  a

Wallstedt, P. C.: MPM-GIMP, https://sourceforge.net/projects/mpmgimp/ (last access: 26 September 2025), 2011. a

Wallstedt, P. C. and Guilkey, J. E.: An Evaluation of Explicit Time Integration Schemes for Use with the Generalized Interpolation Material Point Method, J. Comput. Phys., 227, 9628–9642, https://doi.org/10.1016/j.jcp.2008.07.019, 2008. a

Wang, W. M., Sluys, L. J., and De Borst, R.: Viscoplasticity for Instabilities Due to Strain Softening and Strain-Rate Softening, Int. J. Numer. Meth. Eng., 40, 3839–3864, https://doi.org/10.1002/(SICI)1097-0207(19971030)40:20<3839::AID-NME245>3.0.CO;2-6, 1997. a

Wang, X., Qiu, Y., Slattery, S. R., Fang, Y., Li, M., Zhu, S.-C., Zhu, Y., Tang, M., Manocha, D., and Jiang, C.: A Massively Parallel and Scalable Multi-GPU Material Point Method, ACM T. Graph., 39, https://doi.org/10.1145/3386569.3392442, 2020. a

Wojciechowski, M.: A Note on the Differences between Drucker-Prager and Mohr-Coulomb Shear Strength Criteria, Studia Geotechnica et Mechanica, 40, 163–169, https://doi.org/10.2478/sgem-2018-0016, 2018. a

Wyser, E., Alkhimenkov, Y., Jaboyedoff, M., and Podladchikov, Y. Y.: A Fast and Efficient MATLAB-based MPM Solver: fMPMM-solver v1.1, Geosci. Model Dev., 13, 6265–6284, https://doi.org/10.5194/gmd-13-6265-2020, 2020. a

Xiao, H. and Chen, L. S.: Hencky's Elasticity Model and Linear Stress-Strain Relations in Isotropic Finite Hyperelasticity, Acta Mechanica, 157, 51–60, https://doi.org/10.1007/BF01182154, 2002. a

Yerro, A., Alonso, E., and Pinyol, N.: The Material Point Method for Unsaturated Soils, Géotechnique, 65, 201–217, https://doi.org/10.1680/geot.14.P.163, 2015. a

Yu, H.-S. (Ed.): Plasticity and Geotechnics, no. 13 in Advances in Mechanics and Mathematics, Springer, Boston, MA, ISBN 978-0-387-33597-1, https://doi.org/10.1007/978-0-387-33599-5, 2006. a

Zhang, X., Chen, Z., and Liu, Y.: The Material Point Method: A Continuum-Based Particle Method for Extreme Loading Cases, Elsevier and Tsinghua University Press Computational Mechanics Series, Academic Press, Amsterdam, the Netherlands, ISBN 978-0-12-407855-0, 2017. a

Zhao, Y., Choo, J., Jiang, Y., and Li, L.: Coupled Material Point and Level Set Methods for Simulating Soils Interacting with Rigid Objects with Complex Geometry, Comput. Geotech., 163, 105708, https://doi.org/10.1016/j.compgeo.2023.105708, 2023a. a

Zhao, Y., Jiang, C., and Choo, J.: Circumventing Volumetric Locking in Explicit Material Point Methods: A Simple, Efficient, and General Approach, Int. J. Numer. Meth. Eng., 124, 5334–5355, https://doi.org/10.1002/nme.7347, 2023b. a

1

Inspired by rigid-body rotations, this is a generalization of mivi=pmp(vp+ωp×(xi-xp)) where ωp=Kp-1Lp denotes the angular velocity, Kp the moment of inertia tensor and Lp the angular momentum.

Download
Short summary
Matter is a new computer model that simulates granular media like sand, snow, and soil. These materials can behave like both solids and fluids, making their modeling difficult. Matter addresses this with a unified framework, using a numerical solver called MPM. Able to capture cohesion, density variations and complex terrains, it's particularly relevant for snow avalanches or landslides. Matter runs efficiently on standard computers, making advanced simulations more accessible.
Share