Model Components

Each particle in a PFC model is denoted as a body to clarify the fact that it is not a point mass; a body is a discrete, rigid body with finite extent and a well-defined surface. The PFC model is populated with bodies, pieces, and contacts. There are three types of bodies: balls, clumps, and walls. Each body is composed of one or more pieces. A ball is {a unit-thickness disk in 2D; sphere in 3D}. A clump is a collection of pebbles that are {unit-thickness disks in 2D; spheres in 3D}. Clumps model arbitrarily shaped rigid bodies. The pebbles that make up a clump can overlap, but contacts do not exist between them; instead, contacts form between the pebbles and the pieces of other bodies. A wall is a collection of facets that are {linear segments in 2D; triangles in 3D}, and that form a manifold and orientable surface. Bodies may have surface properties that can be assigned to each piece on the body surface; these surface properties may be used to determine the piece interactions. Bodies exist within the model domain and cannot move outside of this region.

The motion of balls and clumps obeys Newton’s laws of motion, but the motion of walls is user-specified; thus, only balls and clumps have mass properties (mass, centroid position, and inertia tensor) and loading conditions (the force/moment applied from contacts, a body force arising from gravity, and an externally applied force/moment).

Contact mechanics is embodied in particle-interaction laws that employ a soft-contact approach, for which all deformation occurs at the contacts between the rigid bodies. The mechanical interaction between the surfaces of two bodies occurs at one or more pair-wise mechanical contacts. Contacts are created and deleted during the contact detection step of the cycle sequence based on piece proximity. A contact provides an interface between two pieces [1]. The interface consists of a contact plane with location $$(\mathbf{x_c})$$, a normal direction $$(\hat{\mathbf{n}}_\mathbf{c})$$ and coordinate system $$(nst)$$. The contact plane is centered within the interaction volume (either gap or overlap) of the two pieces, oriented tangential to the two pieces and rotated to ensure that relative motion of the piece surfaces remains symmetric w.r.t. the contact plane. Each contact stores a force $$(\mathbf{F_c})$$ and moment $$(\mathbf{M_c})$$ that act at the contact location in an equal and opposite sense on the two bodies [2]. The internal forces/moments are updated by the particle-interaction law. The interaction law utilizes the positions and relative motion of the two pieces to update the forces/moments. We refer to the particle-interaction law as a contact model. The surface properties may also be used as input [3].

A PFC model is created and manipulated by eliciting commands. The commands pertinent to each PFC model component are detailed in the section describing this component (i.e., among the sections “Balls,” “Clumps,” “Walls,” and “Contacts and Contact Models”). Many additional utilities exist to facilitate the modeling process; these are described in the “Common Model Objects” section. The listing of all commands related to PFC model components is available in the PFC Command Summary section. An index of all commands in this documentation (includes FLAC3D and 3DEC commands) on the comprehensive list section.

Nearly all aspects of a PFC model are accessible via an internal scripting language called FISH. See the “FISH Scripting Reference” section for an introduction to FISH. Similar to commands, the FISH functions available to access/modify PFC model components are detailed in the corresponding section describing this component. A listing of all FISH functions related to PFC model components can be found in the “Index: PFC FISH Functions” section. All FISH functions in this documentation (includes FLAC3D and 3DEC functions) is provided in the bigfishlist as well.

Endnotes