1 Introduction

Neoplasms, commonly referred to as tumors, are defined as abnormal growth of tissue (Deisboeck et al. 2011). Tumor growth is problematic because tumors can disrupt organ function and infiltrate and invade healthy tissue (Gatenby and Gawlinski 1996). Tumor growth is also the precursor for metastasis, the spread of cancer from the primary tumor location to secondary locations, where patient outcomes significantly worsen (Poste and Fidler 1980). On the cellular scale, tumor growth is driven by mitosis, the process by which a single-parent cell divides into two daughter cells (Bellomo et al. 2008). This differs from other forms of biological growth, such as the progression of cardiovascular disease, which are driven by changes in cell size and shape (Kuhl et al. 2006). Despite significant scientific interest and study, tumor growth is still far from fully understood (Wang et al. 2015). A better understanding of tumor growth would aid in predictive modeling of tumor progression and contribute to more robust clinical decision making, and the development of new therapies (Clatz et al. 2005). The focus of this paper is on developing a computational model to aid in bridging the gap between the cellular and tissue scale.

In computational modeling of tumor growth, there is an inherent trade-off between continuous and discrete approaches. Continuum modeling is typically used to understand tumors on the tissue scale, where tumors are treated as either a volumetrically growing solid (Ambrosi and Mollica 2002) or as a constituent in a mixture theory approach (Byrne 2003; Preziosi and Tosin 2008). Discrete modeling, on the other hand, views tumors as a collection of cellular or subcellular components (Drasdo et al. 2007; Sandersius and Newman 2008). Discrete modeling, which is often favored by the biophysics community (Norton et al. 2010), allows a mechanistic description of tumor cell growth and division, but is computationally intractable on the tissue scale, which severely limits potential applications in the clinical setting such as modeling the macroscale mechanical interactions between tumors and healthy tissue or organs (Frieboes et al. 2007; Lowengrub et al. 2010). To capture the benefits of both discrete and continuum modeling, hybrid modeling approaches have been proposed (Stolarska et al. 2009). For example, one approach treats the active cells on the perimeter of a tumor as discrete particles and the necrotic cells at the center of the tumor as a continuum captured by a finite element mesh (Kim et al. 2007). In addition, there has been significant effort to formulate continuum models that phenomenologically reflect processes occurring on the cellular scale (Ambrosi et al. 2012; Araujo and McElwain 2004). However, current approaches are imperfect. Therefore, developing tumor models that can overcome the trade-off between the continuous and discrete approaches remains an active area of research (Bellomo et al. 2008; Byrne and Drasdo 2008). Here, we present a new approach to modeling tumor growth. Our aim is to capture the behavior of tumor cells as mechanistically as possible while creating a framework that can ultimately be implemented on the tissue scale. The starting point for our model is peridynamics.

Peridynamics, a framework that is designed to unify the mechanics of discrete and continuous media, is a technique originally developed for fracture mechanics applications (Silling and Lehoucq 2010). Rather than using partial differential equations to formulate the equations of motion, as is done in classical continuum mechanics, peridynamics uses integral equations which exist on crack surfaces and other singularities (Silling 2000; Silling et al. 2007). The first paper introducing peridynamics was published in 2000 and presents peridynamics as a methodology for modeling discontinuities and long range forces using a constitutive relation based on pair-wise interactions between particles (Silling 2000). Since then, peridynamic theory has been extended to include more complex constitutive models (Silling et al. 2007; Warren et al. 2009), developed numerically (Bobaru and Ha 2011), and applied to model a variety of engineered systems (Kilic and Madenci 2010b). Peridynamics is typically implemented as a mesh-free method where a block of material is discretized into an array of nodes that each interact with their neighbors (Silling and Askari 2005). Here, we will extend peridynamics to capture volumetric growth and cellular growth mechanisms such as cell division. In our implementation, a node can represent either a single cell or a collection of cells. We use the node as a single-cell interpretation, illustrated in Fig. 1, to guide our formulation of a cell division mechanism. However, it is important to note that while that interpretation can be helpful, the framework we propose here is not limited to it.

Fig. 1
figure 1

Fundamentally, tumors are composed of biological cells and tumor growth is driven by cell division. Schematic (a) shows a tumor growing around a blood vessel, and Schematic (b) shows an idealized discrete approximation of the cells in a tumor. In this paper, we present a framework for modeling tumor growth that approximates tumors with the idealization shown in (b)

The remainder of the paper is organized as follows. Section 2 provides a general background on dual-horizon peridynamics. Section 3 discusses the implementation of volumetric biological growth effects using the dual-horizon peridynamic framework. Section 4 introduces cellular scale growth mechanisms, specifically a cell division mechanism, to the peridynamic framework. Section 5 demonstrates our numerical implementation of peridynamics with volumetric growth and a cell division mechanism, first by comparing our results to two benchmark problems, second by using our framework to examine macroscale isotropic and anisotropic growth as an emergent property of cell division behavior, and third by showing an example of how our framework can be used to study tumor morphogenesis. We conclude the paper in Sect. 6.

Fig. 2
figure 2

This figure illustrates the terminology used in dual-horizon peridynamics. Schematic (a) shows domain \({\varvec{{\varOmega }}}_0\) transformed to \({\varvec{{\varOmega }}}_t\), points \({{\varvec{x}}}\) and \({{\varvec{x}}}'\) transformed to \({\varvec{y}}\) and \({\varvec{y}}'\) and bond vector \({{\varvec{\xi }}}\) transformed to \({{\varvec{\xi }}} + {\varvec{\eta }}\); Schematic (b) defines horizon \(\mathcal {H}_{{{\varvec{x}}}}\) as all points within distance \(\delta \) of \({{\varvec{x}}}\); Schematic (c) shows the peridynamic force densities \({\varvec{f}}\) that arise when \({{\varvec{x}}}'\) is in the horizon \(\mathcal {H}_{{{\varvec{x}}}}\) and dual horizon \(\mathcal {H}_{{{\varvec{x}}}}'\) of \({{\varvec{x}}}\); Schematic (d) shows the force densities that arise when \({{\varvec{x}}}'\) is in \(\mathcal {H}_{{{\varvec{x}}}}\) but not \(\mathcal {H}_{{{\varvec{x}}}}'\); Schematic (e) shows the force densities that arise when \({{\varvec{x}}}'\) is not in \(\mathcal {H}_{{{\varvec{x}}}}\) but is in \(\mathcal {H}_{{{\varvec{x}}}}'\). The corresponding formal definitions are given in Sect. 2.1

2 Background: dual-horizon peridynamics

Peridynamics is a formulation that writes the classical balance equations as integrals rather than partial differential equations. In a conventional peridynamic formulation, a given point \({{{\varvec{x}}}}\) interacts with other points within its horizon \(\mathcal {H}_{{{\varvec{x}}}}\) where \(\mathcal {H}_{{{\varvec{x}}}}\) is a line (1D), circle (2D), or sphere (3D), defined by radius \(\delta _{{{\varvec{x}}}}\), as illustrated in Fig. 2. The difference between the conventional formulation of peridynamics and dual-horizon peridynamics is that dual-horizon peridynamics allows non-uniformity in horizon size across different points (Ren et al. 2016). Dual-horizon peridynamics is equipped to handle the case where some point \({{\varvec{x}}}\) is within the horizon of \({{\varvec{x}}}'\), but \({{\varvec{x}}}'\) is not within the horizon of \({{\varvec{x}}}\). Implementing variable horizon size is an important feature for adaptive refinement and multi-scale modeling (Bobaru et al. 2009; Bobaru and Ha 2011). And, variable horizon size is a required feature for implementing the cellular scale growth mechanisms presented in Sect. 4 of this paper.

This section will begin by introducing the kinematics and terminology of dual-horizon peridynamics (which are nearly identical to that of conventional peridynamics) and subsequently present the balance laws and the ordinary state-based constitutive equation. It is worth noting that the notation used to present the peridynamic equations is not consistent across the literature. We base our notation on the notation for dual-horizon peridynamics (Ren et al. 2016) and recommended notation for peridynamic software implementation (Littlewood 2015) and use the symbol “\(*\)” in Sect. 3 to indicate the terms that we introduce to capture the effects of growth.

2.1 Kinematics and terminology

In peridynamic theory, the equation of motion is formulated as an integral of interaction forces between points on the body \({\varvec{{\varOmega }}}\). To formulate the balance of linear momentum, presented in Sect. 2.2, it is first necessary to define parameters. Here, we introduce the terminology required to define the interaction between material points in the initial configuration \({\varvec{{\varOmega }}}_0\) as \({{\varvec{x}}}\) and \({{\varvec{x}}}'\), illustrated in Fig. 2a. The bond vector between points \({{\varvec{x}}}\) and \({{\varvec{x}}}'\) in the initial configuration is defined by the term \({\varvec{\xi }} = {{\varvec{x}}}' - {{\varvec{x}}}\). In the discrete setting, suitable for numerical implementation, point \({{\varvec{x}}}\) is referred to as node \(\mathrm {j}\), point \({{\varvec{x}}}'\) is referred to as node \(\mathrm {k}\), and the bond between them is defined as \({{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}} = {{\varvec{x}}}_{\mathrm {k}} - {{\varvec{x}}}_{\mathrm {j}}\). And, as illustrated in Fig. 2a, the displacement vector \({\varvec{u}}({{\varvec{x}}},t)\) and position vector \({\varvec{y}}({{\varvec{x}}},t) = {{\varvec{x}}} + {\varvec{u}}({{\varvec{x}}},t)\) define the current configuration. The relative displacement of a bond is defined as \({\varvec{\eta }}= {\varvec{u}}' - {\varvec{u}}\), described in the discrete setting as \({\varvec{\eta }}_{\mathrm {j} \mathrm {k}} = {\varvec{u}}_{\mathrm {k}} - {\varvec{u}}_{\mathrm {j}}\). Finally, in peridynamics, it is typical to use state notation (Silling et al. 2007). State notation defines a state of order m as a function \(\underline{{\varvec{A}}} \langle \cdot \rangle \) that maps the vector in angle brackets \(\langle \cdot \rangle \) to a tensor of order m. For example, the relative position of bond \({{\varvec{\xi }}}\) can be written as \(\underline{{\varvec{y}}} \langle {{\varvec{\xi }}} \rangle = {\varvec{y}}({{\varvec{x}}}',t) - {\varvec{y}}({{\varvec{x}}},t) = {{\varvec{\xi }}} + {\varvec{\eta }}\). In this paper, states are written with an underline, and angle brackets are used to indicate the quantity which the state function is acting on. State notation is convenient in defining the peridynamic constitutive relations and is amenable to numerical implementation.

Fundamental to peridynamics is the concept of horizon. The bonds between point \({{\varvec{x}}}\) and the points inside the horizon of \({{\varvec{x}}}\) are assumed to be existent and non-negligible. The horizon of point \({{\varvec{x}}}\) is defined geometrically as all points \({{\varvec{x}}}'\) such that \({{\varvec{x}}}' \in \mathcal {H}_{{{\varvec{x}}}}\), where \(\mathcal {H}_{{{\varvec{x}}}}\) is

$$\begin{aligned} \ \mathcal {H}_{{{\varvec{x}}}} = \{ {{\varvec{x}}}' \, | \, \, \, || {{\varvec{x}}}' - {{\varvec{x}}} || < \delta _{{{\varvec{x}}}} \} \end{aligned}$$
(1)

with \(\delta _{{{\varvec{x}}}}\) as the parameter that dictates horizon size. Physically, \(\mathcal {H}_{{{\varvec{x}}}}\) is defined as the domain where any particle will experience force exerted by \({{\varvec{x}}}\). The concept of horizon \(\mathcal {H}_{{{\varvec{x}}}}\) was introduced for conventional peridynamics, dual-horizon peridynamics inherits this concept and expands on it (Ren et al. 2016). In dual-horizon peridynamics, the dual horizon \(\mathcal {H}_{{{\varvec{x}}}}'\) is defined as the union of points whose horizons include \({{\varvec{x}}}\), written as

$$\begin{aligned} \ \mathcal {H}_{{{\varvec{x}}}}' = \{ {{\varvec{x}}}' \, | \, {{\varvec{x}}} \in \mathcal {H}_{{{\varvec{x}}}'} \} \, . \end{aligned}$$
(2)

For all points \({{\varvec{x}}}\) within \(\mathcal {H}_{{{\varvec{x}}}'}\), \({{\varvec{x}}}'\) acts on \({{\varvec{x}}}\). And, unlike the horizon which has a circular (2D) or spherical (3D) shape, the dual horizon has an arbitrary shape. If the horizon size \(\delta \) does not vary across points, then \(\mathcal {H}_{{{\varvec{x}}}} = \mathcal {H}_{{{\varvec{x}}}}'\) and the dual-horizon peridynamics formulation will be identical to that of conventional peridynamics. Moving forward, we will define force density and the equation of motion in the context of dual-horizon peridynamics with the knowledge that it reduces to conventional peridynamics if horizon size is identical for all points.

In dual-horizon peridynamics, the force between points \({{\varvec{x}}}\) and \({{\varvec{x}}}'\) is defined in two distinct steps, first using the dual horizon and then using the horizon. We define force density vector \({\varvec{f}}_{{{\varvec{x}}} {{\varvec{x}}}'}({\varvec{\eta }}, {{\varvec{\xi }}})\) as the force per volume acting on particle \({{\varvec{x}}}\) due to particle \({{\varvec{x}}}'\). This implies that \({{\varvec{x}}}\) is the location of the force and \({{\varvec{x}}}'\) is the source of the force, illustrated in Fig. 2c, e. Likewise, \({\varvec{f}}_{{{\varvec{x}}}' {{\varvec{x}}}}(-{\varvec{\eta }},-{{\varvec{\xi }}})\) is the force density vector acting on particle \({{\varvec{x}}}'\) due to particle \({{\varvec{x}}}\), illustrated in Fig. 2c, d. Each force density is accompanied by a reaction force density, i.e., \({\varvec{f}}_{{{\varvec{x}}} {{\varvec{x}}}'}\) is a direct force density acting on \({{\varvec{x}}}\) and \(-{\varvec{f}}_{{{\varvec{x}}} {{\varvec{x}}}'}\) is a reaction force density acting on \({{\varvec{x}}}'\). The direct force density at \({{\varvec{x}}}\) is computed from points in the dual horizon of \({{\varvec{x}}}\), while the reaction force density at \({{\varvec{x}}}\) is computed from points in the horizon of \({{\varvec{x}}}\). The net force density acting on point \({{\varvec{x}}}\) due to bond \({{\varvec{x}}}\)-\({{\varvec{x}}}'\) is a sum of the direct force density and reaction force density written as

$$\begin{aligned} \ {\varvec{f}}_{{{\varvec{x}}} {{\varvec{x}}}'}({\varvec{\eta }},{{\varvec{\xi }}}) - {\varvec{f}}_{{{\varvec{x}}}' {{\varvec{x}}}}(-{\varvec{\eta }},-{{\varvec{\xi }}}) \, . \end{aligned}$$
(3)

Similarly, the net force density acting on a point \({{\varvec{x}}}'\) due to bond \({{\varvec{x}}}\)-\({{\varvec{x}}}'\) is

$$\begin{aligned} \ {\varvec{f}}_{{{\varvec{x}}}' {{\varvec{x}}}}(-{\varvec{\eta }},-{{\varvec{\xi }}}) - {\varvec{f}}_{{{\varvec{x}}} {{\varvec{x}}}'}({\varvec{\eta }},{{\varvec{\xi }}}) \, . \end{aligned}$$
(4)

When \({{\varvec{x}}}\) is outside the horizon of \({{\varvec{x}}}'\) (\({{\varvec{x}}}' \not \in \mathcal {H}_{{{\varvec{x}}}}'\)), as illustrated in Fig. 2d, direct force \({\varvec{f}}_{{{\varvec{x}}} {{\varvec{x}}}'}=0\) and corresponding reaction force \(-{\varvec{f}}_{{{\varvec{x}}} {{\varvec{x}}}'}=0\). Likewise, in the reverse scenario illustrated in Fig. 2e where \({{\varvec{x}}} \not \in \mathcal {H}_{{{\varvec{x}}}'}'\) \({\varvec{f}}_{{{\varvec{x}}}' {{\varvec{x}}}}=0\) corresponding reaction force \(-{\varvec{f}}_{{{\varvec{x}}}' {{\varvec{x}}}}=0\). By differentiating between the contributions from \(\mathcal {H}_{{{\varvec{x}}}}'\) and \(\mathcal {H}_{{{\varvec{x}}}}\) (and subsequently direct and reaction forces) the antisymmetry of net force density is preserved even in the case of variable horizon size.

2.2 Balance of linear momentum

The defining feature of peridynamics is that the classical balance equations are formulated as integrals rather than partial differential equations (Silling 2000). In the peridynamic version of the balance of linear momentum, inertial force, body force, and internal force terms at point \({{\varvec{x}}}\) and time t are equated as

$$\begin{aligned} \ \rho {\varvec{\ddot{u}}}({{\varvec{x}}},t)= & {} \int _{{{\varvec{x}}}' \in \mathcal {H}_{{{\varvec{x}}}}'} {\varvec{f}}_{{{\varvec{x}}} {{\varvec{x}}}'}({\varvec{\eta }},{{\varvec{\xi }}}) \, \mathrm {{\varvec{d}}} V_{{{\varvec{x}}}'} \, \nonumber \\&-\int _{{{\varvec{x}}}' \in \mathcal {H}_{{{\varvec{x}}}} } {\varvec{f}}_{{{\varvec{x}}}' {{\varvec{x}}}}(- {\varvec{\eta }}, - {{\varvec{\xi }}}) \, \mathrm {{\varvec{d}}} V_{{{\varvec{x}}}'} \, + \, {\varvec{b}}({{\varvec{x}}},t) \end{aligned}$$
(5)

where \(\rho \) is density, \({\varvec{\ddot{u}}}\) is acceleration, and \({\varvec{b}}\) is body force (Ren et al. 2016). Internal force is computed as a function of the force density vectors defined in Sect. 2.1. Integrating over the dual horizon \(\mathcal {H}_{{{\varvec{x}}}}'\) contributes the direct force term acting on point \({{\varvec{x}}}\), while integrating over the horizon \(\mathcal {H}_{{{\varvec{x}}}}\) contributes the reaction force term. In the conventional version of peridynamics, where horizon size is uniform, \(\mathcal {H}_{{{\varvec{x}}}}' = \mathcal {H}_{{{\varvec{x}}}}\) and the expression for internal force can be written as a single integral. The discrete form of the balance of linear momentum is written as

$$\begin{aligned} \ \rho {\varvec{\ddot{u}}}({{\varvec{x}}}_{\mathrm {j}},t)= & {} \sum _{\mathrm {k} \in \mathcal {H}_{\mathrm {j}}'} {\varvec{f}}_{\mathrm {j} \mathrm {k}}({\varvec{\eta }}_{\mathrm {j} \mathrm {k}},{{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}}) \, {\varDelta }V_{\mathrm {k}} \, \nonumber \\&-\sum _{\mathrm {k} \in \mathcal {H}_{\mathrm {j}} } {\varvec{f}}_{\mathrm {k} \mathrm {j}}(- {\varvec{\eta }}_{\mathrm {j} \mathrm {k}}, - {{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}}) \, {\varDelta }V_{\mathrm {k}} \, + \, {\varvec{b}}({{\varvec{x}}}_{\mathrm {j}},t) \end{aligned}$$
(6)

where the integral in Eq. (5) is simply replaced by a summation. In the numerical implementation of dual-horizon peridynamics, this equation can be assembled easily by looping through the horizon of each node and subsequently inferring each node’s dual horizon (Ren et al. 2016). For every node \(\mathrm {k}\) in \(\mathcal {H}_{\mathrm {j}}\), calculate \({\varvec{f}}_{\mathrm {k} \mathrm {j}}\) and add the term \(-{\varvec{f}}_{\mathrm {k} \mathrm {j}} {\varDelta }V_k\) to the horizon summation term of node \(\mathrm {j}\) and add the term \({\varvec{f}}_{\mathrm {k} \mathrm {j}} {\varDelta }V_j\) to the dual horizon \(\mathcal {H}_{\mathrm {k}}^{'}\) summation term of node k. With this procedure, the dual horizon is never computed explicitly.

2.3 Constitutive equations

The first version of peridynamics, bond-based peridynamics, treats bonds as independent springs (Silling 2000). In bond-based peridynamics, Poisson’s ratio is limited to 1/3 in two dimensions and 1/4 in three dimensions which makes it unsuitable for modeling many engineering materials. In response to the limitations of bond-based peridynamics, ordinary state-based and non-ordinary state-based peridynamics were introduced (Silling et al. 2007). The qualification “state-based” comes from the fact that the constitutive law utilizes the state notation introduced in Sect. 2.1. In state-based peridynamics, bond force is a function of the collective deformation of all bonds that act on the same points as the bond in question. In state-based peridynamics, Poisson’s ratio is not fixed. When modeling soft biological tissue, it is typical to assume incompressibility or near incompressibility (\(\nu \approx 0.5\)); therefore, we do not present the equations for bond-based peridynamics in this paper. The maximum flexibility in constitutive modeling is introduced with the non-ordinary state-based peridynamics approach (Warren et al. 2009); however, an adaptation of non-ordinary state-based peridynamics for the cell division aspect of biological growth discussed in Sect. 4 is beyond the scope of this work. In this section, we describe the constitutive equations for ordinary state-based peridynamics that will be used for the remainder of the paper.

In dual-horizon peridynamics, a distinction is made between forces that arise at point \({{\varvec{x}}}\) from the horizon and forces that arise at point \({{\varvec{x}}}\) from the dual horizon. In this section, we define the constitutive relation based on bond \({{\varvec{x}}} - {{\varvec{x}}}'\) assuming that \({{\varvec{x}}}\) is in the dual horizon of \({{\varvec{x}}}'\) (\({{\varvec{x}}}'\) is in the horizon of \({{\varvec{x}}}\)). This means that for a given bond \({{\varvec{x}}} - {{\varvec{x}}}'\) we present the force density corresponding to the action force applied at point \({{\varvec{x}}}'\) due to \({{\varvec{x}}}\) and the subsequent reaction force applied at point \({{\varvec{x}}}\). The distinction between which point is \({{\varvec{x}}}\) and which point is \({{\varvec{x}}}'\) is arbitrary; therefore, in computing force density at all points \({{\varvec{x}}}\), bond \({{\varvec{x}}}-{{\varvec{x}}}'\) will eventually be treated as bond \({{\varvec{x}}}'-{{\varvec{x}}}\). The constitutive equations are presented this way because it is convenient for numerical implementation.

Fundamentally, peridynamics is a non-local theory meaning that non-adjacent points interact. The degree to which non-local forces come into play is controlled by two parameters, horizon size \(\delta \) and influence function \(\underline{\omega } \langle {{\varvec{\xi }}} \rangle \). The influence function can be chosen to weight the effect of certain bonds more heavily or it can be set to a constant. For example, \(\underline{\omega } \langle {{\varvec{\xi }}} \rangle \) can be equal to

$$\begin{aligned} \ \underline{\omega } \langle {{\varvec{\xi }}} \rangle = \exp \left( - \frac{|| {{\varvec{\xi }}} ||^2}{\delta ^2} \right) \qquad \text {or} \qquad \underline{\omega } \langle {{\varvec{\xi }}} \rangle = 1 \end{aligned}$$
(7)

or another user-defined function (Ren et al. 2016; Littlewood 2015). Given a chosen influence function, we compute the influence function weighted volume of the horizon at point \({{\varvec{x}}}\), \(m_{{{\varvec{x}}}}\), by integrating over \(\mathcal {H}_{{{\varvec{x}}}}\) as

$$\begin{aligned} \ m_{{{\varvec{x}}}} = \int _{\mathcal {H}_{{{\varvec{x}}}}} \underline{\omega } \langle {{\varvec{\xi }}} \rangle \, {{\varvec{\xi }}} \cdot {{\varvec{\xi }}} \, \mathrm {{\varvec{d}}} V_{{{\varvec{\xi }}}} \end{aligned}$$
(8)

which is written discretely at node \(\mathrm {j}\) as

$$\begin{aligned} \ m_{\mathrm {j}} = \sum _{\mathrm {k} \in \mathcal {H}_{\mathrm {j}}} \underline{\omega } \langle {{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}} \rangle \, {{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}} \cdot {{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}} \, {\varDelta }V_{\mathrm {k}} \end{aligned}$$
(9)

with \({\varDelta }V_{\mathrm {k}}\) representing the nodal volume associated with the node located at node \(\mathrm {k}\). In 2D, some constant thickness h is assumed and \({\varDelta }V = h {\varDelta }A \). In addition, we define extension state \(\underline{e} \langle {{\varvec{\xi }}} \rangle \) as

$$\begin{aligned} \ \underline{e} \langle {{\varvec{\xi }}} \rangle = || {{\varvec{\xi }}} + {\varvec{\eta }}|| - || {{\varvec{\xi }}} || \end{aligned}$$
(10)

based on the difference in separation between bonds in the deformed and reference configurations. Using \(m_{{{\varvec{x}}}}\) defined at point \({{\varvec{x}}}\) and \(\underline{e} \langle {{\varvec{\xi }}} \rangle \) defined for each bond associated with \({{\varvec{x}}}\), we compute the dilation at \({{\varvec{x}}}\), \(\theta _{{{\varvec{x}}}}\) as

$$\begin{aligned} \ \theta _{{{\varvec{x}}}} = \frac{n}{m_{{{\varvec{x}}}}} \int _{\mathcal {H}_{{{\varvec{x}}}}} \underline{\omega } \langle {{\varvec{\xi }}} \rangle \, ||{{\varvec{\xi }}} || \, \underline{e} \langle {{\varvec{\xi }}} \rangle \, \mathrm {d} V_{{{\varvec{\xi }}}} \end{aligned}$$
(11)

where n is the dimension number, \(n \in \{ 2,3 \}\). This equation is discretized at node \(\mathrm {j}\) as

$$\begin{aligned} \ \theta _{\mathrm {j}} = \frac{n}{m_{\mathrm {j}}} \sum _{\mathrm {k} \in \mathcal {H}_{\mathrm {j}}} \underline{\omega } \langle {{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}} \rangle \, || {{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}} || \, \underline{e} \langle {{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}} \rangle \, {\varDelta }V_{\mathrm {k} } \, . \end{aligned}$$
(12)

Then, the deviatoric extension state for bond \({{\varvec{\xi }}}\) from the perspective of point \({{\varvec{x}}}\) can be computed as

$$\begin{aligned} \ \underline{e}^d \langle {{\varvec{\xi }}} \rangle = \underline{e} \langle {{\varvec{\xi }}} \rangle - \frac{\theta _{{{\varvec{x}}}} ||{{\varvec{\xi }}} || }{n} \, . \end{aligned}$$
(13)

Using these terms, the scalar force state that defines the linear elastic ordinary state-based constitutive law for each bond \({{\varvec{\xi }}}\) from the perspective of point \({{\varvec{x}}}\) is written as

$$\begin{aligned} \underline{t}_{{{\varvec{x}}}'{{\varvec{x}}}} = \frac{n \, \kappa \, \theta _{{{\varvec{x}}}}}{m_{{{\varvec{x}}}}} \underline{\omega } \langle {{\varvec{\xi }}} \rangle \, || {{\varvec{\xi }}} || \, + \, \frac{n \, (n + 2) \, \mu }{m_{{{\varvec{x}}}}} \, \underline{\omega } \langle {{\varvec{\xi }}} \rangle \, \underline{e}^d\langle {{\varvec{\xi }}} \rangle \end{aligned}$$
(14)

where \(\kappa \) and \(\mu \) are the Lamé parameters bulk modulus and shear modulus, respectively (Littlewood 2015). Given the scalar force state \(\underline{t}\), the force density vectors corresponding with each bond are computed based on the direction of the deformed bond vector as

$$\begin{aligned} \ {\varvec{f}}_{{{\varvec{x}}}'{{\varvec{x}}}}({\varvec{\eta }}, {{\varvec{\xi }}}) = \underline{t}_{{{\varvec{x}}}'{{\varvec{x}}}} \, \, \frac{-{\varvec{\eta }}- {{\varvec{\xi }}}}{|| {\varvec{\eta }}+ {{\varvec{\xi }}} ||} \end{aligned}$$
(15)

which is the action force applied at point \({{\varvec{x}}}'\), and

$$\begin{aligned} \ -{\varvec{f}}_{{{\varvec{x}}}'{{\varvec{x}}}}({\varvec{\eta }}, {{\varvec{\xi }}}) = \underline{t}_{{{\varvec{x}}}'{{\varvec{x}}}} \, \, \frac{{\varvec{\eta }}+ {{\varvec{\xi }}}}{|| {\varvec{\eta }}+ {{\varvec{\xi }}} ||} \end{aligned}$$
(16)

which is the reaction force applied at point \({{\varvec{x}}}\). To compute the total force at each node, required for solving Eq. (6), force density vectors are summed over all bonds in the horizon.

Fig. 3
figure 3

Growth is modeled as an increase in nodal radius which causes nodes to shift to a new equilibrium position. Schematic (a) shows nodes at equilibrium prior to applied growth; Schematic (b) shows the non-equilibrium state immediately after applied growth; Schematic (c) shows the new, growth induced, equilibrium position. This process is driven by step (i) where growth is applied, and step (ii) where the peridynamic framework is used to reach a new equilibrium position

2.4 Bond breaking

Although the focus of this paper is not on fracture, we first describe bond breaking as is typical for solving a peridynamic fracture problem. For modeling bond breaking to simulate fracture, one approach is to compute the work required to break a single bond as a function of bond stretch,

$$\begin{aligned} \ s = \frac{|| {{\varvec{\xi }}} + {\varvec{\eta }}|| - || {{\varvec{\xi }}} ||}{||{{\varvec{\xi }}}||} \end{aligned}$$
(17)

compute the total amount of work required to generate a fracture surface, equalize the total amount of work with the strain energy release rate, and solve for critical bond stretch \(s_0\) (Silling and Lehoucq 2010). The value of \(s_0\) will be a function of material and discretization defining parameters.

Given some value for critical bond stretch \(s_0\), we define history variable \(\gamma \) where

$$\begin{aligned} \ \gamma (t, {{\varvec{\xi }}})= {\left\{ \begin{array}{ll} 1 &{} \text {if }s(t', {{\varvec{\xi }}})< s_0\text { for all }0<= t' <= t \\ 0 &{} \text {otherwise} \, . \end{array}\right. } \end{aligned}$$
(18)

This equation states that once bonds break they do not re-form. Broken bonds enter the constitutive relationship by redefining the influence function \(\underline{\omega }\) as a function of \(\gamma \), written as

$$\begin{aligned} \ \underline{\omega } \langle {{\varvec{\xi }}} \rangle := \gamma \underline{\omega } \langle {{\varvec{\xi }}} \rangle \, . \end{aligned}$$
(19)

Section 3.2 will discuss bond breaking in the context of biological materials.

3 Modeling biological materials and volumetric growth with dual-horizon peridynamics

As is typical for modeling biological growth, we focus on the quasi-static response (Ambrosi et al. 2011). In the absence of inertial and body forces, the balance of linear momentum at point \({{\varvec{x}}}\) can be expressed as,

$$\begin{aligned} \ 0= & {} \int _{{{\varvec{x}}}' \in \mathcal {H}_{{{\varvec{x}}}}'} {\varvec{f}}_{{{\varvec{x}}} {{\varvec{x}}}'}({\varvec{\eta }},{{\varvec{\xi }}}) \, \mathrm {{\varvec{d}}} V_{{{\varvec{x}}}'} \, \nonumber \\&- \int _{{{\varvec{x}}}' \in \mathcal {H}_{{{\varvec{x}}}} } {\varvec{f}}_{{{\varvec{x}}}' {{\varvec{x}}}}(- {\varvec{\eta }}, - {{\varvec{\xi }}}) \, \mathrm {{\varvec{d}}} V_{{{\varvec{x}}}'} \end{aligned}$$
(20)

and written in discrete form at node \(\mathrm {j}\) as

$$\begin{aligned} \ 0= & {} \sum _{\mathrm {k} \in \mathcal {H}_{\mathrm {j}}'} {\varvec{f}}_{\mathrm {j} \mathrm {k}}({\varvec{\eta _{\mathrm {j} \mathrm {k}}}},{{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}}) \, {\varDelta }V_{\mathrm {k}} \, \nonumber \\&-\sum _{\mathrm {k} \in \mathcal {H}_{\mathrm {j}} } {\varvec{f}}_{\mathrm {k} \mathrm {j}}(- {\varvec{\eta }}_{\mathrm {j} \mathrm {k}}, - {{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}}) \, {\varDelta }V_{\mathrm {k}}. \end{aligned}$$
(21)

This equation is solved numerically using either implicit pseudo time integration at every load step (Mitchell 2011) or explicit integration with adaptive dynamic relaxation at every load step (Kilic and Madenci 2010a). In a relatively straightforward manner, isotropic volumetric growth can be captured by including a growth term g in the constitutive equation analogous to the term \(\alpha {\varDelta }T\) in a one-way coupled thermomechanical formulation (Kilic and Madenci 2010b). As illustrated in Fig. 3, we implement growth as a two step process: first the volume associated with each node increases, then the peridynamic balance equations are used to determine the new mechanical equilibrium configuration of the system. In Sect. 3.1, we introduce a constitutive law that includes growth. Unlike Sect. 2, we present equations in their discrete form only, because the discrete form translates directly to both the numerical implementation of the peridynamic equations and the interpretation of the cellular scale mechanisms presented in Sect. 4. In Sect. 3.2, we discuss the additional considerations required to deal with both bond breaking and bond forming and re-forming, because unlike most engineering materials, biological materials regularly form and re-form internal bonds.

3.1 Peridynamics constitutive relation including volumetric growth

We introduce a growth parameter g into the constitutive equation in the discrete setting. We define g at each node as an increase in node radius, where \(r_g = (1+g) r_0\). This means that when prescribing area growth \(A_g = (1 + g_a) A_0\) in dimension \(n=2\) or volume growth \(V_g = (1 + g_v) V_0\) in dimension \(n=3\) we update g as

$$\begin{aligned} \begin{aligned}&g = (1 + g_a)^{1/2} - 1 \qquad \text {in }n=2 \\&g = (1 + g_v)^{1/3} - 1 \qquad \text {in }n=3 \, . \end{aligned} \end{aligned}$$
(22)

Given this definition, g is restricted to \(g > -1\), and \( g <0\) corresponds physically to shrinkage. In this paper, we introduce g to the constitutive equation through a modified version of \(||{{\varvec{\xi }}}||\), noted as \(||{{\varvec{\xi }}}^*||\) and a modified version of \({\varDelta }V_{{{\varvec{x}}}}\) noted as \({\varDelta }V_{{{\varvec{x}}}}^*\). The parameters \(||{{\varvec{\xi }}}||\), defined for the bond between node \(\mathrm {j}\) and node \(\mathrm {k}\), are written as

$$\begin{aligned} \ || {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}}||= & {} \bigg ( 1 + \frac{\int _0^1 g(\, {{\varvec{x}}}_{\mathrm {j}} + ({{\varvec{x}}}_{\mathrm {k}}-{{\varvec{x}}}_{\mathrm {j}} \, )s \, ) \, | {{\varvec{x}}}_{\mathrm {k}} - {{\varvec{x}}}_{\mathrm {j}} | \, \mathrm {d}s }{\int _0^1 | {{\varvec{x}}}_{\mathrm {k}} - {{\varvec{x}}}_{\mathrm {j}} | \, \mathrm {d}s} \bigg ) \nonumber \\&||{{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}}|| \end{aligned}$$
(23)

for some positionally dependent growth function \(g({{\varvec{x}}})\). When nodes are interpreted as individual cells, it often makes sense to think of g as piece-wise constant function where each cell is attributed some level of growth. If growth g is homogeneous, this equation reduces to

$$\begin{aligned} \ ||{{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}}|| = (1+g)||{{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}}|| \, . \end{aligned}$$
(24)

The equation for \({\varDelta }V^*\) at node \(\mathrm {i}\) is defined similarly by integrating position dependent growth over either the volume or the area associated with node \(\mathrm {i}\) defined by node radius \(r_{\mathrm {i}}\). For every node, we can define g in spherical coordinates centered on the node and compute \({\varDelta }V^*\) as

$$\begin{aligned} {\varDelta }V_{\mathrm {i}}^*= & {} \int _0^{\pi } \int _0^{2 \pi } \frac{1}{3} \sin (\phi ) \bigg [ \int _0^{r_0} (1 + g_i(r,\theta ,\phi )) {\mathrm {d}} r \bigg ]^3 {\mathrm {d}}\theta {\mathrm {d}} \phi .\nonumber \\ \end{aligned}$$
(25)

In two dimensions, we instead define g in polar coordinates and compute \({\varDelta }V^*\) as

$$\begin{aligned} \ {\varDelta }V_{\mathrm {i}}^* = \int _0^{2\pi } \frac{1}{2} \bigg [ \int _0^{r_0} ( 1 + g_i(r, \theta )) {\mathrm {d}} r \bigg ]^2 {\mathrm {d}} \theta \, . \end{aligned}$$
(26)

For a constant level of growth \(g_{\mathrm {i}}\) at each node \(\mathrm {i}\), the equation for \({\varDelta }V^*\) is reduced to

$$\begin{aligned} \ {\varDelta }V_{\mathrm {i}}^* = (1+g_{\mathrm {i}})^n {\varDelta }V_{\mathrm {i}} \, . \end{aligned}$$
(27)

For \(n=2\), \({\varDelta }V^*\) represents an area multiplied by some constant thickness \(h = 1\). In both Sect. 4 and Sect. 5, we assume homogeneous growth associated with each node, thus Eq. (27) is sufficient.

The influence function can also be re-written to account for growth, \(\underline{\omega }^* \langle {{\varvec{\xi }}}^* \rangle \), though if the influence function is defined as a constant, as in (7), it will remain identical. Growth modified stretch is computed as

$$\begin{aligned} \ s^*_{\mathrm {j} \mathrm {k}} = \frac{|| {\varvec{y}}_{\mathrm {k}} - {\varvec{y}}_{\mathrm {j}} || - || {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}} ||}{||{{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}} ||} \end{aligned}$$
(28)

where a bond with identical levels of growth and deformation will have zero stretch. Here, in addition to introducing \({{\varvec{\xi }}}^*\), we replace \({{\varvec{\xi }}} + {\varvec{\eta }}\) with the term \({\varvec{y}}_{\mathrm {k}} - {\varvec{y}}_{\mathrm {j}}\) because this alternative notation will be helpful in Sect. 3.2. The term \(\gamma \) will enter the influence function in the manner defined by Eq. (19), and in Sect. 3.2 we provide an alternative definition for \(\gamma \) that allows for bond breaking and forming. Using these new parameters, we redefine horizon weighted volume at a node \(\mathrm {j}\) as \(m^*_{\mathrm {j}}\). The updated version of Eq. (9) is written as

$$\begin{aligned} \ \ m_{\mathrm {j}}^* = \sum _{\mathrm {k} \in \mathcal {H}_{\mathrm {j}}} \underline{\omega }^* \langle {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}} \rangle \, || {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}} ||^2 \, {\varDelta }V_{\mathrm {k}}^* \, . \end{aligned}$$
(29)

The expression for elongation state including growth \(\underline{e}^*\) modifies Eq. (10) as

$$\begin{aligned} \ \underline{e}^* \langle {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}} \rangle = || {\varvec{y}}_{\mathrm {k}} - {\varvec{y}}_{\mathrm {j}} || - || {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}} || \end{aligned}$$
(30)

where we again replace \({{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}} + {\varvec{\eta }}_{\mathrm {j} \mathrm {k}}\) with the expression \({\varvec{y}}_{\mathrm {k}} - {\varvec{y}}_{\mathrm {j}}\). Putting these expressions together, the new equation for dilation \(\theta ^*\) at node \(\mathrm {j}\), an update of Eq. (12), is written as

$$\begin{aligned} \ \theta _{\mathrm {j}}^* = \frac{n}{m_{\mathrm {j}}^*} \sum _{\mathrm {k} \in \mathcal {H}_{\mathrm {j}}} \underline{\omega }^* \langle {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}} \rangle \, || {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}} || \, \underline{e}^* \langle {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}} \rangle \, {\varDelta }V_{\mathrm {k}}^* \, . \end{aligned}$$
(31)

The modified deviatoric extension state \({\underline{e}^d}^*\), an update of Eq. (13), is

$$\begin{aligned} \ {\underline{e}^d}^* \langle {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}} \rangle = \underline{e}^* \langle {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}} \rangle - \frac{\theta _{\mathrm {j}}^* ||{{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}} || }{n} \, . \end{aligned}$$
(32)

Scalar force state \(\underline{t}^*\) is then expressed as

$$\begin{aligned} \underline{t}_{\mathrm {k} \mathrm {j}}^* = \frac{n \, \kappa \, \theta _{\mathrm {j}}^*}{m_{\mathrm {j}}^*} \underline{\omega }^* \langle {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}} \rangle || {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}}|| \, + \, \frac{n \, (n + 2) \, \mu }{m_{\mathrm {j}}^*} \, \underline{\omega }^* \langle {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}} \rangle \, {\underline{e}^d}^*\langle {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}} \rangle \end{aligned}$$
(33)

replacing Eq. (14). Finally, the force density vectors including growth are computed as

$$\begin{aligned}&{\varvec{f}}_{\mathrm {k} \mathrm {j}}^*( {\varvec{y}}_{\mathrm {j}}, {\varvec{y}}_{\mathrm {k}} , {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}}) = \underline{t}_{\mathrm {k} \mathrm {j}}^* \, \, \frac{ - ({\varvec{y}}_{\mathrm {k}} - {\varvec{y}}_{\mathrm {j}}) }{|| {\varvec{y}}_{\mathrm {k}} - {\varvec{y}}_{\mathrm {j}} ||} \qquad \text {and} \nonumber \\&\quad -{\varvec{f}}_{\mathrm {k} \mathrm {j}}^*({\varvec{y}}_{\mathrm {j}}, {\varvec{y}}_{\mathrm {k}} , {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}}) = \underline{t}_{\mathrm {k} \mathrm {j}}^* \, \, \frac{ ({\varvec{y}}_{\mathrm {k}} - {\varvec{y}}_{\mathrm {j}}) }{|| {\varvec{y}}_{\mathrm {k}} - {\varvec{y}}_{\mathrm {j}} ||} \end{aligned}$$
(34)

and inserted into Eq. (21). Again, \({{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}}+{\varvec{\eta }}_{\mathrm {j} \mathrm {k}}\) is replaced with the expression \({\varvec{y}}_{\mathrm {k}} - {\varvec{y}}_{\mathrm {j}}\).

3.2 Peridynamics with bond breaking, forming and re-forming

In the typical formulation of peridynamics, Eq. (18) indicates that once bonds are broken they will not re-form or “heal”. This is consistent with our understanding of most materials: fracture is irreversible. However, this is not a requirement of the peridynamic constitutive relation. In fact, peridynamics has been used to model fracture and subsequent healing of cortical bone through a modified version of Eq. (18) (Deng et al. 2008). Biological materials can form and re-form bonds because unlike standard engineering materials, biological materials are able to adapt to their surroundings through both passive and active processes (Ambrosi et al. 2012). For example, in many types of tissue adjacent cell membranes are attached by adhesion links that can either break apart or form due to external stimuli (Drasdo and Höhme 2005). Therefore, in addition to introducing growth into the constitutive equation, we present three additional considerations required for modeling biological materials and growth with peridynamics. First, bonds can form and re-form. Second, despite the fact that the material model is linear elastic, bond breaking and forming can lead to a nonlinear material response. Third, when nodes are changing their connectivity it may be necessary to redefine stretch and elongation.

3.2.1 Bond forming and re-forming

As stated previously, Eq. (18) prohibits bond healing and new bond formation. There are many possible different ways to approach formation of new bonds, here we present the simple modification

$$\begin{aligned} \ \gamma _{\mathrm {j} \mathrm {k}}(t, {{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}})= {\left\{ \begin{array}{ll} 1 &{} \text {if }s_{\mathrm {j} \mathrm {k}}(t, {{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}}) < s_{\mathrm {inter}} \\ 0 &{} \text {otherwise} \, . \end{array}\right. } \end{aligned}$$
(35)

where a bond automatically exists if two nodes are within a certain distance defined by interaction stretch \(s_{\mathrm {inter}}\). In a biological context, \(s_{\mathrm {inter}}\) is some distance below which cells will develop adhesive connections between them. We also update Eq. (35) to include growth g consistent with Eq. (28) as

$$\begin{aligned} \ \gamma _{\mathrm {j} \mathrm {k}}^*(t, {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}})= {\left\{ \begin{array}{ll} 1 &{} \text {if }s^*_{\mathrm {j} \mathrm {k}}(t, {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}}) < s_{\mathrm {inter}} \\ 0 &{} \text {otherwise} \end{array}\right. } \end{aligned}$$
(36)

where influence function is modified by \(\gamma ^*\) as

$$\begin{aligned} \ \underline{\omega }^* \langle {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}} \rangle := \gamma ^* \underline{\omega }^* \langle {{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}} \rangle \, . \end{aligned}$$
(37)

In the future, as this methodology develops, a more complex expression may replace Eqs. (3537). In particular, it would be interesting to directly and meaningfully relate \(s_{\mathrm {inter}}\) to the energy required to break or form adhesion links between cells.

3.2.2 Nonlinear quasi-static solution scheme

Although this paper focuses on linear elastic material response and a quasi-static solution, bond breaking, forming, and re-forming can introduce nonlinearity. To capture this nonlinearity, we apply loading (in this case applied growth g) incrementally as

$$\begin{aligned} \begin{aligned} \ g_{t + 1}&= (1 + g_t)(1 + g_a^{\mathrm {inc}} )^{1/2} - 1 \qquad \text {in }n=2 \\ \ g_{t + 1}&= (1 + g_t)(1 + g_v^{\mathrm {inc}})^{1/3} - 1 \qquad \text {in }n=3 \end{aligned} \end{aligned}$$
(38)

where \(g_{t+1}\) is defined as growth at step \(t+1\) and computed as a function of growth at step t and some incremental scaling magnitude. Several small increments of growth are applied, and the quasi-static solution is obtained following each increment. In the original implementations of peridynamics, where a node’s horizon \(\mathcal {H}_{{{\varvec{x}}}}\) remains the same throughout the simulation (i.e., it does not grow), the list of nodes within the horizon and dual horizon of \({{\varvec{x}}}\) are determined by Eqs. (1, 2) at the start of the simulation. In the case where bond forming is allowed, the horizon must be updated at the start of every load increment. Since the horizon of each node changes, it is necessary to re-compute the horizon between each step. Furthermore, it is logical to make horizon size \(\delta \) dependent on growth g. We implement the simple dependence

$$\begin{aligned} \ \delta _{\mathrm {i}}^* = (1+g_{\mathrm {i}}) \, \delta ^0_{\mathrm {i}} \end{aligned}$$
(39)

where \(\delta ^0\) is horizon size without any growth. And, rather than determining the horizon based on position in the initial configuration, the horizon of node \(\mathrm {i}\) is determined based on position at the end of the previous time step as

$$\begin{aligned} \mathcal {H}_{\mathrm {i}} = \{ \mathrm {k} |\,|| {\varvec{y}}_{\mathrm {k}} - {\varvec{y}}_{\mathrm {i}} || < \delta _{\mathrm {i}}^* \} \end{aligned}$$
(40)

where \({\varvec{y}}\) refers to the calculated position at the end of the last quasi-static step. Alternative relationships may also be appropriate; however, nuance in determining horizon size is not necessarily critical because the influence function \(\underline{\omega }\) can also be tuned to define interacting nodes. Also, it is worth pointing out again that the dual-horizon formulation of peridynamics makes it acceptable for adjacent nodes to have different levels of growth and subsequently different spacing and horizon sizes.

3.2.3 Redefine initial separation with an assumed separation distance

Sections 3.2.1 and 3.2.2 provide a framework for nodes to break apart and re-attach. This means that nodes which were not initially close enough together to be considered bonded may subsequently form a bond. In Sect. 4, introducing a cell division mechanism will introduce new nodes and cause the connectivity between nodes to change. Therefore, defining \(||{{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}}||\) based on g and the distance between coordinates in the reference configuration \(||{{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}}||\) is not sufficient. To solve this problem, we redefine \(||{{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}}||\) as a function of node radius, \(r_{\mathrm {j}}\) and \(r_{\mathrm {k}}\), and growth, \(g_{\mathrm {j}}\) and \(g_{\mathrm {k}}\), assuming that the area associated with each node experiences a homogeneous level of growth. The new definition of \(||{{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}}||\) is

$$\begin{aligned} \ ||{{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}}|| = (1+g_{\mathrm {j}}) r_{\mathrm {j}} + (1+g_{\mathrm {k}}) r_{\mathrm {k}} \end{aligned}$$
(41)

and may be inserted into Eqs. (28)–(37) in place of the original definition of \(||{{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}}||\). Using this approach, the typical practice of implementing short range contact forces to stop nodes from overlapping (Littlewood 2015) is redundant because forces between nodes will automatically become repulsive when the distance between them is less than \(||{{\varvec{\xi }}}^*_{\mathrm {j} \mathrm {k}}||\).

With regard to numerical implementation, this new form of \(||{{\varvec{\xi }}}^*||\) implies that for a stress-free initial configuration and subsequent meaningful results, each node should be separated by distance \(||{{\varvec{\xi }}}^*||\) and each node’s horizon \(\mathcal {H}\), dual horizon \(\mathcal {H}'\) and influence function \(\underline{\omega }^*\) should ensure that only immediate neighbors contribute to the computation of force density at a node. For the remainder of this paper, we assume a horizon size \(\delta \) such that only immediate neighbors will be within a node’s horizon.

Introducing growth and a mechanism that allows cells to detach and re-attach means that there are three components contributing to the material deformation response. The components are pure growth (application of g at the nodes), cell reorganization, and elastic deformation. Similar components have been proposed in a phenomenological tissue scale framework, where cell reorganization was treated as analogous to plasticity in that it occurs after some yield stress is achieved (Ambrosi and Preziosi 2008; Ambrosi et al. 2012). Using peridynamics, the cell reorganization mechanism is captured mechanistically. Future work will involve refining the constitutive relation to better include the physics controlling cell attachment and detachment. In Sect. 4, we introduce an additional cellular scale growth mechanism, cell division, into the peridynamic framework.

4 Implementing cellular scale growth mechanisms in the peridynamic framework

Thus far, we model biological growth by applying load steps and repeatedly solving a quasi-static problem. Based on the implementation of growth and cellular reorganization presented in Sect. 3, the procedure contains three steps: (i) determining nodal connections using \(\delta \) and \(\underline{\omega }\), (ii) applying growth to each node, and (iii) using established peridynamic equations to relax to mechanical equilibrium. In this section, we provide a framework for implementing additional cellular scale mechanisms of growth. Section 4.1 discusses the implementation of a cell division mechanism, and then Sect. 4.2 contains a general implementation algorithm summarizing the procedures introduced in Sects. 2, 3 and 4.1.

Fig. 4
figure 4

Cell division is implemented as a multi-step process where a parent node splits into two daughter nodes on an axis defined in two dimensions by angle \(\phi \). Schematic (a) shows cell division with \(p=4\) defined by division angle \(\phi \); Schematic (b) illustrates parameters \(d_i\), \(r_i\) and \(\theta _i\) used in Eq. (45); Schematics (cg) illustrate initial equilibrium node position (c), non-equilibrium grown position (d), equilibrium grown position (e), non-equilibrium divided position (f), and final equilibrium position (g) where each parent node has split into two daughter nodes. Nodes will grow according to a prescribed growth rule until they exceed a threshold size that triggers the division algorithm

4.1 Cell division (mitosis) in the peridynamic framework

From a biological perspective, tumor growth is driven by cell division (Gillies and Cabernard 2011). And, the transition from normal cells to tumor cells is often marked by a dramatic increase in cell proliferation rate. On the cellular scale, a parent cell grows and then subsequently divides into two daughter cells, as illustrated in Fig. 4. To capture this process within a peridynamic framework, we allow cells to divide once they exceed a certain threshold level of growth \(g_{\mathrm {th}}\). In \(n=2\), this threshold level corresponds to area growth \(g_A = 1\) and radius growth \(g_{\mathrm {th}} =\root 2 \of {2}-1\). In \(n=3\), this threshold level corresponds to volume growth \(g_V =1\) and \(g_{\mathrm {th}} = \root 3 \of {2} -1\). For both cases, this is equivalent to cells doubling in size. When a cell divides, it divides along an axis with unit vector \({\varvec{m}}\) which is dictated by a prescribed angle \(\phi \) in two dimensions and two prescribed angles \(\phi _a\) and \(\phi _b\) in three dimensions. The division angle, illustrated in Fig. 4, can be either random or deterministic. At one extreme (in 2D), \(\phi = U(-\pi /2, \pi /2)\) corresponds to a uniformly random division angle. At the other extreme (in 2D), \(\phi = \alpha \) corresponds to a consistent deterministic division angle. During each cell division event, a new node is introduced at a position and with properties determined by division angle, parent cell radius, parent cell growth, and parent cell initial position. The original node’s position and properties are also updated to transform it from a parent cell to a daughter cell. In Sect. 3, we replaced the term \({{\varvec{\xi }}}_{\mathrm {j} \mathrm {k}}+{\varvec{\eta }}_{\mathrm {j} \mathrm {k}}\) with \({\varvec{y}}_{\mathrm {k}} - {\varvec{y}}_{\mathrm {j}}\) to clearly deal with the new nodes which were not present in the initial configuration.

In this implementation, we choose simple and symmetric rules for splitting a parent node into two daughter nodes. The radii of the daughter nodes are assigned as identical to the radius of the parent node \(r_d = r_0\). Then, to preserve total area (\(A_0 = 2 A_d\) in \(n=2\)) or volume (\(V_0 = 2 V_d\) in \(n=3\)), the daughter node growth \(g_d\) is determined as function of parent node growth \(g_0\):

$$\begin{aligned} \begin{aligned}&g_d = \root 2 \of {\frac{1}{2}}(1 + g_0) - 1 \qquad \text {in n=2 } \\&g_d = \root 3 \of {\frac{1}{2}} (1 + g_0) - 1 \qquad \text {in n=3. } \end{aligned} \end{aligned}$$
(42)

Then, given some division axis unit vector, \({\varvec{m}}\), which is a function of \(\phi \) in \(n=2\) and \(\phi _a\) and \(\phi _b\) in \(n=3\), a new node position is assigned to each of the daughter cells. The node position is selected such that the nodal areas/volumes do not overlap. If \({\varvec{y}}_0\) is the position of the parent cell, and vector \({\varvec{m}}\) defines the angle on which the node divides, then \({\varvec{y}}_{\mathrm {j}}\) and \({\varvec{y}}_{\mathrm {k}}\) are the positions of the daughter cells written as

$$\begin{aligned} \begin{aligned}&{\varvec{y}}_{\mathrm {j}}= {\varvec{y}}_0 + (1+g_d) \, r_0 \, {\varvec{m}} \qquad \\&{\varvec{y}}_{\mathrm {k}} = {\varvec{y}}_0 - (1+g_d) \, r_0 \, {\varvec{m}} \, . \end{aligned} \end{aligned}$$
(43)

During implementation, the node number of \({\varvec{y}}_0\) is preserved in either \({\varvec{y}}_{\mathrm {j}}\) or \({\varvec{y}}_{\mathrm {k}}\). Immediately after the division step, the cells will not be at mechanical equilibrium. Their position and the position of their neighboring cells will subsequently adjust to attain mechanical equilibrium.

In the numerical setting, splitting cells over multiple steps and allowing mechanical relaxation between each step may yield more stable results. We implement a cell division algorithm inspired by the ellipse/barbell shape that cells take on as they divide (Gillies and Cabernard 2011). This algorithm, illustrated in Fig. 4 and detailed in this section in 2D, starts with overlapping daughter cells with a small separation distance and increases the separation distance until the end of the cell division procedure where cells will no longer overlap. Given p, the number of steps to complete cell division, we define separation distance \(d^i\) at step i as

$$\begin{aligned} \ d^i = \frac{2 \, i \, (1 + g_d^p) \, r_0 }{p} \, . \end{aligned}$$
(44)

During the subsequent mechanical relaxation step, \(d_i\) will replace \(||{{\varvec{\xi }}}^*||\) when determining the force between particles mid-division. During the stepped division process, the particles are overlapped. In the two-dimensional case, an equivalent level of growth at each step \(g_d^i\) is determined such that the area of the two daughter cells minus the area of the overlap remains equal to the area of the parent cell. Angle \(\theta ^i\), illustrated in Fig. 4b is defined as \(\theta ^i = \arcsin d_i / 2r_i\), and used to define total area \(A^i\) as

$$\begin{aligned} \begin{aligned} \ A^i&= 2 \pi [(1+g_d^i) r_0 ]^2 \\&\quad -\,2[(1 + g_d^i)r_0]^2 ( \, \pi \frac{\pi - 2 \theta }{2 \pi } - \sin \theta \cos \theta \, ) \, . \end{aligned} \end{aligned}$$
(45)

Using \(A^i\), \(g_d^i\) is solved for by equating \(A^i\) and area before division procedure \(A_0=\pi (1 + g_0)^2 r_0^2\) as

$$\begin{aligned} \ g_d^i = \frac{1}{r_0}\sqrt{ A_0 / [\, 2 \pi - 2 (\, \pi \frac{\pi - 2 \theta }{2 \pi } - \sin \theta \cos \theta \,) \,] } - 1 \, . \end{aligned}$$
(46)

The number of steps p to complete cell division is a matter of discretion, typical values used in our simulations are \(p=2\) to \(p=5\). Furthermore, in the numerical setting multiple division events occurring in unison may cause stability problems. To remedy this, we introduce an additional random parameter that represents probability of division and decrease the step size when multiple cell division events are about to occur and staggers the cell division events such that they occur within some interval \([g_{\mathrm {th}} - \tau , g_{\mathrm {th}} + \tau ]\) rather than at the threshold \(g_{\mathrm {th}}\) exactly. Making this adjustment means only a small fraction of cells divide in unison, and numerical stability is preserved. Beyond cell division, cellular scale mechanisms such as cell necrosis and apoptosis may be implemented in a similar fashion by shrinking (\(g <0\)) or removing nodes when g falls below some threshold value. In Sect. 4.2, where we summarize the overall implementation procedure, we refer to these potential algorithms via the general phrase “cellular scale mechanisms”.

figure a

4.2 Implementation procedure including cellular scale mechanisms

The integrated implementation of the work detailed in Sects. 24 is summarized in Algorithm 1. This algorithm is the foundation of the numerical implementation used to generate the results presented in Sect. 5. Overall, the implementation procedure follows a pattern where the amount of growth at each node at each step is prescribed according to user-defined rules, cellular scale mechanisms are prescribed according to user-defined rules, and the quasi-static solution to the peridynamic equation of motion is subsequently solved to reach mechanical equilibrium. In this implementation, growth on the node-level is always isotropic. Growth rate may differ at each node depending on position, and global anisotropy may emerge due to directional cell division. These concepts are further explored in Sect. 5.

5 Numerical studies

Numerical implementation of the peridynamic framework for modeling biological growth follows directly from the algorithm presented in Sect. 4.2. In this section, we begin by comparing the numerical framework with growth and no division to two benchmark problems with known analytical solutions. Then, we examine isotropic and anisotropic growth as emergent properties of the division angle. Finally, we look at an example problem where growth rate varies based on location. In this section, we show results from a two-dimensional numerical implementation. Table 1 lists all the parameters required to implement the simulations aside from the prescribed loading conditions which are specific to each subsection.

Table 1 All of the parameters used to implement the numerical examples are as follows
Fig. 5
figure 5

For the first benchmark test (a), we compare numerical results to the analytical solution for a rectangular (\(20 \times 25\) unit length) block, centered at the origin, growing without constraints. Plot (c) shows agreement between the analytical and numerical results for x-displacement, where displacement \(u_x\) is plotted with respect to initial position x; Plot (d) shows agreement between the analytical and numerical results for y-displacement, where displacement \(u_y\) is plotted with respect to initial position y. For the second benchmark test (b), we compare numerical results to the analytical solution for a beam where bending is driven by differential growth between layers. Plot (e) shows curvature \(\rho \) with respect to lower layer growth \(g_2\). Here, the numerical results only deviate from the analytical solution when the beam is subject to large deformation

5.1 Benchmark comparison

In order to validate our implementation of growth in the peridynamic framework and ensure that our numerical solution scheme is functioning, we chose two simple benchmark problems with an analytical solution for comparison. The first problem is quasi-static homogeneous growth of a rectangular block oriented perpendicular to the x-y plane where the displacement along cuts perpendicular to the x and y axis can be computed as

$$\begin{aligned} \ u_x = (1 + g) x \qquad \qquad u_y = (1 + g) y , \end{aligned}$$
(47)

respectively, where \(u_x\) and \(u_y\) are displacement, and x and y are coordinates in the reference coordinates (Madenci and Oterkus 2014). Excellent agreement between the numerical and analytical solutions is shown in Fig. 5. The second benchmark problem is illustrated in Fig. 5 where change in curvature is induced by homogeneous quasi-static growth of the bottom half of a beam. Beam curvature \(\rho \) is computed as

$$\begin{aligned} \ \rho = \frac{2 h}{3 g_2} \end{aligned}$$
(48)

where h is the beam depth illustrated in Fig. 5b and \(g_2\) is the isotropic growth of the bottom half of the beam. This equation was derived for a bimetal thermostat undergoing uniform temperature change where the upper and lower layers have different coefficients of thermal expansion (Timoshenko 1925). In our version of the analytical equation, \(g_2\) replaces the term \(\alpha _2 {\varDelta }T\). Curvature with respect to growth is plotted in Fig. 5e where there is agreement between the numerical and analytical solutions until the large deformation regime is reached and some deviation is observed.

Fig. 6
figure 6

We compute the growth induced deformation measure \({\varvec{F}}^g\) by tracking the change in position of initial particles and computing the best-fit value for \({\varvec{F}}^g\) using Eq. (51). Schematic (a) shows stretch vectors at the initial position \({\varvec{\lambda }}_0\) defined by relative position of each node, (a-i) shows \(\lambda \) when growth has occurred without division, while Schematic (a-ii) shows \(\lambda \) constructed by tracking the position of only the nodes present at the start of the simulation, the nodes with gray area are added when division occurs. The hexagonal initial configuration in (a) is convenient because the stretch vectors are all the same length and distributed isotropically. When division angle is a uniform random variable, \(\phi = U(-\frac{\pi }{2},\frac{\pi }{2})\), the average deformation over several simulations is isotropic. Plot (b) shows a histogram and an approximate probability density function for \(F_{xx}^g\) and \(F_{yy}^g\) computed from 500 simulations with 61 hexagonally arranged initial nodes and three division events; Plot (c) compares the average percent difference between \(F_{xx}^g\) and \(F_{yy}^g\) for 500 simulations with a different initial number of nodes, therefore a different initial number of stretch vectors, and a different number of division events. As the initial number of nodes increases and/or more division events occur, the difference between \(F_{xx}^g\) and \(F_{yy}^g\) decreases

5.2 Isotropic and anisotropic growth as emergent properties of division angle

One major benefit of the framework presented in this paper is that the influence of cell division angle can be studied. To do this, we consider a simple problem where homogeneous growth is applied to a block of material. When the cell division mechanism described in Sect. 4.1 is implemented, growth at a node exceeding a threshold, defined as double the initial area, will trigger division along some axis defined by angle \(\phi \). At one extreme, \(\phi \) may be equal to a constant value, which would produce highly anisotropic macroscopic growth, while at the other extreme \(\phi \) may be uniformly random and produce, in an average sense, isotropic growth.

In order to quantify the influence of the division angle, we compute an approximate deformation measure \({\varvec{F}}\) by tracking the position of the nodes in our simulation. Because our block of material is growing homogeneously without any constraint, a single “best-fit” growth induced deformation measure \({\varvec{F}}^g\) can be identified to quantify the results of a single simulation. As illustrated in Fig. 6a, we define \(\lambda _0\) as the set of \(\mathrm {m}\) vectors connecting adjacent nodes at the start of the simulation and \(\lambda \) as the set of \(\mathrm {m}\) vectors connecting the identical nodes at the step of the simulation in question. Then, we construct matrices \({\varvec{{\varLambda }}}_0\) and \({\varvec{{\varLambda }}}\) as

$$\begin{aligned} \ {\varvec{{\varLambda }}}_0 = [ \lambda _0^1 \, \lambda _0^2 \, \lambda _0^3 ... \lambda _0^m] \qquad \, \, {\varvec{{\varLambda }}}= [ \lambda ^1 \, \lambda ^2 \, \lambda ^3 ... \lambda ^m] \end{aligned}$$
(49)

and solve for the approximate version of \({\varvec{F}}^g\) using the expression

$$\begin{aligned} \ {\varvec{F}}^g {\varvec{{\varLambda }}}_0 = {\varvec{{\varLambda }}}\end{aligned}$$
(50)

solved through the normal equation

$$\begin{aligned} {\varvec{F}}^g = {\varvec{{\varLambda }}}{\varvec{{\varLambda }}}_0^T ({\varvec{{\varLambda }}}_0 {\varvec{{\varLambda }}}_0^T)^{-1} \, . \end{aligned}$$
(51)

Including a random component in division angle \(\phi \) means that simulation results will be stochastic; therefore, it is necessary to conduct tens to hundreds of simulations to get a meaningful picture of the results.

The first analysis that we conduct is designed to demonstrate that uniformly random division, defined as \(\phi = U(-\frac{\pi }{2}, \frac{\pi }{2})\), produces an isotropic deformation measure \({\varvec{F}}^g\), where we define isotropic deformation as \(F_{xx}^g = F_{yy}^g\) with \(F_{xy}^g = F_{yx}^g = 0\). The results of this analysis, concisely summarizing 6000 simulations, with 500 simulations with initial node numbers of 7, 19, 37, and 61 and either one, two or three division events each, are shown in Fig. 6b, c. Every simulation has a hexagonal initial configuration like the configurations plotted in Fig. 7. The plot in Fig. 6b is a histogram of \(F_{xx}^g\) and \(F_{yy}^g\) over 500 simulations with 61 initial nodes, 3 division events, and \(A=9A_0\) at the end of the simulations. Although results vary from simulation to simulation, it is clear that on average \(F_{xx}^g=F_{yy}^g\). The plot in Fig. 6c shows that the average percentage difference between the two terms is small and decreases as both the initial node number and the number of division events increase. This indicates that for both large populations and populations that divide multiple times the average \({\varvec{F}}^g\) converges toward isotropy. Overall, these results verify that \(\phi = U(-\frac{\pi }{2}, \frac{\pi }{2})\) produces isotropic growth in an average sense.

Next, we examined the influence of a division angle with the form \(\phi = \alpha + U(-\beta ,\beta )\) where \(\alpha \) is some fixed value, and \(\phi \) is a function of \(\alpha \) and some random variable scaled by \(\beta \). In Fig. 7, we look at the ratio \(F_{xx}^g/ F_{yy}^g\) as radial growth g progresses for different values of \(\beta \). In-between cell division events, \(F_{xx}^g/ F_{yy}^g\) is constant. Every time cell division occurs, \(F_{xx}^g/ F_{yy}^g\) steps to a value influenced by \(\beta \). From the quantitative plot and the qualitative illustrations of nodal position, it is clear that \(\beta \) controls the degree of anisotropy. A lower value of \(\beta \) will correspond to a higher value of \(F_{xx}^g/ F_{yy}^g\). Overall, Fig. 7 verifies that anisotropic growth is the result of division on a fixed angle.

Fig. 7
figure 7

Our simulations show that anisotropic growth is an emergent property of oriented cell division. We define division angle \(\phi \) as a function of scaling parameter \(\beta \) and a uniform random variable: \(\phi = 0.0 + U(-\beta ,\beta )\). Then, we compare simulation results for different values of \(\beta \). Plot (a) shows the ratio \(F_{xx}^g / F_{yy}^g\) with respect to growth g for 10 simulations at each value of \(\beta \). The thick lines are the average results from 10 simulations. The vertical lines highlight each of three division events that occur during the simulation. The simulation results (b) illustrate node position between each division event for \(\beta =0\), \(\beta = \frac{\pi }{4}\) and \(\beta = \frac{\pi }{2}\). When \(\beta =\frac{\pi }{2}\), growth is, in an average sense, isotropic with \(F_{xx}^g/ F_{yy}^g = 1\)

Fig. 8
figure 8

The orientation of cell division may also play a part in morphogenesis. In these simulations, growth g is prescribed as a function of vertical displacement defined in Eq. (52). In the upper row (a), no cell division occurs; in the second row (b) cell division is random with \(\phi = U(-\frac{\pi }{2}, \frac{\pi }{2})\); In the third row (c) \(\phi = \frac{\pi }{2}\) or vertically oriented; in the lower row (d) \(\phi = 0.0\) corresponding to a horizontal orientation. Qualitatively, different cell division rules yield different curvature \(\rho \) and different levels of “fingering” or roughness, illustrated by a dashed line, on the upper layer of cells. A quantitative comparison of average curvature in the lower layer is made in Fig. 9

Fig. 9
figure 9

Average curvature of the bottom layer of nodes \(\rho \) is used as a metric to compare multiple simulations. In the left plot, a histogram of curvature for 500 different simulations shows that mean curvature \(\mu _\rho \) is only 0.05% different from curvature computed when there is no division. By this metric, isotropic division and no division are equivalent. This plot also shows that when division is always horizontal, \(\rho \) is significantly lower than the no division case and when division is always vertical \(\rho \) is slightly higher than the no division case

5.3 Cell division as a factor in morphogenesis

As a toy example of how cell division may influence morphogenesis, we define a growth law as a function of y-coordinate with the expression

$$\begin{aligned} \ f(y)= {\left\{ \begin{array}{ll} 0 &{} \text {if }y< y_{L}\\ y/ (y_{U} - y_{L}) &{} \text {if }y_{L} \le y \le y_{U}\\ 1 &{} \text {if }y_{U} < y \end{array}\right. } \end{aligned}$$
(52)

where the increment of growth applied at each node at each time step \(g_{t}\) is modified as \(g_{t} := g_{t} f(y)\). In this example, we set the lower bound \(y_L\) at the base of the simulated block of material and the upper bound \(y_U\) just above the top of the simulated block with \(h/ (y_U-y_L) = \sqrt{3} /2\) where h is initial block height. The differential growth caused by this variation in growth rate causes the block to curve, as illustrated in Fig. 8. In the upper row of the figure, the results when no cell division is occurring are illustrated. It is interesting to qualitatively compare the results with random division, vertical division, and horizontal division to the case where no division occurs. Qualitatively, two major differences can be observed across these four cases. First, including the cell division mechanism leads to an uneven upper surface. In particular, the case where cell division occurs in the vertical direction seems to be exhibiting some form of “fingering” where certain parts of the surface protrude outward (Cristini et al. 2002; Cristini 2005). Although this simple example is not particularly physical, it does lead to further questions because fingering and rough edges are correlated with invasive behavior and nutrient concentration gradients may cause gradients in growth rate similar to the one tested here. The flexibility provided by the framework in this paper is a good fit for studying problems where mechanically driven instability and nutrient concentration gradient driven instability may be coupled. Second, the radius of curvature of the block \(\rho \) (measured reproducibly using the nodes on the lower layer) appears to be influenced by the cell division mechanism. The influence of the division mechanism on \(\rho \) is presented quantitatively in Fig. 9.

In Fig. 9, the average radius of curvature \(\rho \) of the bottom layer of nodes in each simulation is used as a metric to compare multiple simulations. We plot a histogram of \(\rho \) with results from 500 simulations with random division angle which shows a relatively large spread. A notable result is that the mean value of \(\rho \) from all the simulations is only 0.05% different from the value of \(\rho \) that corresponds to the case with no cell division, indicating that by this metric the two scenarios are, on average, equivalent. We also note that a horizontal division angle will significantly lower \(\rho \), while a vertical division angle will slightly raise it. These quantitative metrics are in line with the qualitative results, where Fig. 8 clearly shows a relatively large change in curvature corresponding to the horizontal division angle.

6 Conclusion

In this paper, we present a methodology for implementing biological growth and a cell division mechanism with peridynamics. We begin in Sect. 2 with a background on dual-horizon peridynamics, we introduce growth into the dual-horizon peridynamics framework in Sect. 3, and we describe a method for implementing cellular scale growth mechanisms such as cell division in Sect. 4. In Sect. 5, we show numerical results that validate our approach, show how isotropic and anisotropic growth can be captured in our framework, and present a simple problem to show that considering cell division can be an important factor in morphogenesis.

Given these results, it is also interesting to attempt to phenomenologically categorize the cell division mechanism. In our initial framework, cell division is triggered by applied growth and occurs in part via cell reorganization. A more complex trigger of cell division, for example, if cell division was induced by local tension, could be interpreted as a way for cells to reorganize to relieve stress phenomenologically similar to plasticity. A benefit of the peridynamic framework presented here is that the cell division mechanism does not required a formal phenomenological classification to be implemented.

As stated in Sect. 1, the physical interpretation of the discretization can view nodes as either individual cells or as a collection of cells. When nodes are viewed as individual cells, this framework can be used to interpret experiments performed on small colonies of cells. When nodes are viewed as simply a means to discretize a block of tissue, this methodology is suitable for understanding macroscale tumor growth. The main purpose of peridynamics, to unify the mechanics of continuous and discontinuous media, can be taken advantage of to create multi-scale models with high levels of discretization at areas of activity and change and low levels of discretization in necrotic zones where a continuous representation is acceptable.

The work presented here is only the beginning of what can be done with this framework. Moving forward, it will be interesting to implement and study different constitutive laws, particularly a viscoelastic constitutive law (Linder et al. 2011), the influence of nutrient concentration or cell-signal driven growth rates, the influence of stress during growth (Helmlinger et al. 1997), the influence of boundary conditions, additional cellular scale mechanisms, fracture and reattachment of tumor cells, particularly as it may relate to cancer metastasis, coupling between cellular scale mechanisms and geometric instability (Lejeune et al. 2016a, b, c), and numerical implementation techniques that can take advantage of regions of cell necrosis to increase computational efficiency. And, further advances in the theoretical aspects and numerical implementation of peridynamics can be translated to improvements in our techniques (Foster et al. 2009). Fundamentally, we believe that this method is a promising way to bridge scales in the study of tumor growth by allowing a convenient way to realize cellular scale mechanisms on the tissue scale.