MPM Algorithm
The UCAM-MPM3D code uses Update Stress First (USF) algorithm. The Material Point Method (MPM) algorithm comprises of 4 stages.
Initialisation
A continuum body is discretised into a finite set of material points corresponding to the original configuration of the body. The number of material points corresponds to the resolution of the mesh size adopted in the Finite Element Method. The material points are followed throughout the deformation of the material, which is a Lagrangian description of the motion.
An arbitrary computational grid is initialised to describe the natural coordinates of the material points. For the purpose of simplicity, a Cartesian grid is usually adopted.
The state variables (mass/density, velocity, strain, stress, other material parameters corresponding to the adopted constitutive relation) are initialised at every material point.
Mass of each material point is computed based on the density and initial volume. The initial volume is computed based on the material point spacing. The code assumes uniform spacing in all directions. Although the density of material points are updated, the mass is conserved.
Solution phase for time step to
Compute nodal mass
Compute nodal momentum
Compute nodal velocities
Assign force to nodes from previous step (for Newmark integration)
Compute nodal acceleration from previous step (for Newmark integration)
Compute strain from previous time-step
Update stress from previous time-step ( depends on the constitutive model)
Compute body force at nodes from material points
Compute traction at nodes from material points
Compute external force
Compute internal force
Compute nodal force
Compute nodal acceleration
Compute nodal velocity
Normal Integration
Newmark Integration
Update soil density
Update material points acceleration
Update material points velocity
Mapping from nodal velocity
Normal Integration
Newmark Integration
Update material points position
Normal Integration
Newmark Integration
At the end of every time step, all the variables on the grid nodes are initialised to zero. The material points carry all the information about the solution, and the computational grid is re-initialised for the next step.
Generate output files (.vtk) for each sub time step
- MPM stores information at the material points and not at the nodes as it is in the Finite Element Method. This includes the application of traction at the material points, not at the nodes.
Nomenclature
General
acceleration due to gravity ()
parameter for Newmark integration
parameter for Newmark integration
Material Point
acceleration of material point at time
mass of material point at time
momentum of material point at time
total number of material points in the body
spacing between material points
traction at material point
velocity of material point at time
volume at material points
coordinate vector of material point at time
volumetric strain of particle at time
density of material point
Node
acceleration of node
body force of node
nodal force of node at time
nodal external force of node at time
nodal internal force of node at time
mass of node at time
momentum of node at time
traction at node
velocity of node at time
strain of node at time
stress of node at time
Shape Functions
gradient of the shape function that maps node to material point and vice versa such that
shape function that maps node to material point and vice versa with independent variable of the location of each material point at time