1 About Bob

Bob Behringer was one of the main players in the field of granular matter and contributed more than many to better understanding of these systems. When I first saw the beautiful images of force chains, produced by his experiments on photo-elastic particles [1,2,3,4,5], I remember thinking that this person had just tore a window in the wall of mystery surrounding the poorly understood granular systems. By devising a way to visualise force propagation paths in such media he made it possible to peer inside them and start to sort out the confusion surrounding them at the time. Indeed, his experiments gave rise to a new generation of predictive modelling.

And then I met the man and realised that there was much more to Bob than his experiments. Bob impressed me immensely well beyond his science. The combination of his levelheadedness and his love of life was inspiring. Very notable was his default ‘cool, calm and collected’ mode, with a pen between his teeth and a glint of humour in his eye. But that mode would last only until I described to him a potential new idea. The cool mode would disappear and he would react with the enthusiasm of a child. Indeed, his boundless curiosity made it easy to get him excited with good science. Beyond the science there were his abundant generosity and kindness. It was a pleasure to discuss with him anything, from fundamental science, through music and swimming to the meaning of life in general. Each such discussion felt like embarking on a voyage of discovery and almost always resulted in some more dots being connected and a better understanding emerging. Often, our discussions would meander into bantering, at which he was very good. It was very easy to forget how important his contribution had been to the development of the field and simply love him as a human being. Bob’s death left a large gap in the field, as well as a hole in the hearts of many. The field is not the same without him.

2 Introduction

Granular materials (GMs) form an important and ubiquitous state of matter, playing a major role in our everyday life. They support and transmit stress significantly differently than conventional solids, often in the form of non-uniform stress chains [6,7,8,9,10,11,12,13,14]. Having a fundamental theory to predict the stress that develops in such media under given boundary loads is extremely significant for a wide range of applications in fields beyond science and engineering. All continuum static stress theories are based on balance conditions of force and torque:

$$\begin{aligned}&{\boldsymbol{\nabla}}\cdot \varvec{\sigma }+ {\mathbf{F}}_{\mathrm{ext}} = 0 \nonumber \\&\varvec{\sigma }= \varvec{\sigma }^T , \end{aligned}$$
(1)

where \(\varvec{\sigma }\) is the stress tensor, \(\varvec{\sigma }^T\) its transpose, and \({\mathbf{F}}\) includes all external and body forces on the medium. These equations must be supplemented by one constitutive relation in two dimensions (three in three dimensions). In elasticity theory, this is achieved by imposing compatibility conditions on the strain and relating the strain to the stress. This procedure results in elliptic equations whose solutions cannot be the observed stress chains. Alternative approaches, such as Critical State theory, popular in the engineering literature, rely on closures that relate the stress components when the medium is on the ‘yield surface’, which is a surface in the space spanned by the stress components. This approach gives a hyperbolic set of equations, yielding stress chains, or slip lines, but it is phenomenological in nature and lacks predictive power [15].

At marginal rigidity, GMs are minimally connected, possessing the lowest possible mean number of force-carrying contacts per particle, at which the structure is at mechanical equilibrium. In this marginally rigid, or isostatic, state, the intergranular forces in the assembly can be determined from balance conditions alone. This makes the strain, and hence stress–strain relations, redundant as input at the grain level. Since the continuum stress field is a coarse-grained representation of the spatial distribution of those forces then continuum strain-based constitutive properties are also redundant. For this reason, such theories, which includes elasticity, are inadequate for GMs.

Isostaticity stress theory has been developed to resolve the problem for ideally statically determinate, or isostatic, media [16,17,18,19,20,21,22,23,24]. Although most GMs are not precisely isostatic, on the verge of yielding they are sufficiently close to this state, containing isostatic regions, whose sizes depend on the proximity to marginal rigidity [21]. This makes isostaticity theory relevant to general GMs. Real systems can be generated close to marginal rigidity, e.g. by careful preparation or by generating low density shear bands [22, 23].

The irrelevance of strain for marginally rigid systems leaves structure as the only usable constitutive property for closing the stress equations and isostaticity theory closes the equations by one stress–structure relation in 2D (three in 3D). The most general form of the relation in 2D is [16,17,18,19]

$$\begin{aligned} \sum _{ij} q_{ij}\sigma _{ij} \equiv {\mathbf{Q}}: \varvec{\sigma }= 0 , \end{aligned}$$
(2)

where \({\mathbf{Q}}\) is a symmetric fabric tensor, quantifying the local structure in a specific way [25]. Isostaticity theory is the name given to the stress field equations (1) and (2). These equations are hyperbolic, resulting in solutions of stress chains extending along characteristic paths. While friction does not seem to appear explicitly in the equations, it affects the dynamics, that give rise to the static structure and, therefore, the statistics of the fabric tensor Q. Following empirical [16, 17] and mean field [19] proposals for the form of \({\mathbf{Q}}\), a first-principle theory derived it directly from the local grain-scale microstructure [20]. Specifically, around a grain g

$$\begin{aligned} {{\mathbf{Q}}}_g = \frac{1}{2} {\varvec{\epsilon }}^{-1}\cdot \left[ {{\mathbf{C}}}_g + \left( {{\mathbf{C}}}_g\right) ^T\right] \cdot \varvec{\epsilon }, \end{aligned}$$
(3)

where \(\varvec{\epsilon }=\left( {\begin{matrix} 0 & 1 \\ -1 & 0\end{matrix}}\right) \) is a \(\pi /2\)-rotation matrix and

$$\begin{aligned} {{\mathbf{C}}}_g = \sum _c {{\mathbf{C}}}_{cg} = \sum _c {\mathbf{r}}_{cg} \otimes {{\mathbf{R}}}_{cg} , \end{aligned}$$
(4)

with the sum running over the loops c that surround grain g. The quadrilateral, whose diagonals are the vectors \({\mathbf{r}}_{cg}\) and \({\mathbf{R}}_{\mathrm{cg}}\) (see Fig. 1), is called ‘quadron’, and it is the structure’s most basic volume element [27]. For brevity, I index the quadrons in the following cg by q rather than cg. This structural tensor, which has a 3D equivalent [28], is useful for most GMs except when the grains are extremely non-convex [29]. The quadrons surrounding grain g are said to belong to it and their number equals its number of contacts with neighbouring grains. This description allows us both to quantify the disordered local structure unambiguously and close the stress equations with a stress–structure coupling tensor \({{\mathbf{Q}}}\).

It can be readily verified that Tr\(\{{{\mathbf{Q}}}_g\}=\sum _{q\in g}\)Tr\(\{{{\mathbf{Q}}}_{q}\}=\sum _{q\in g} {\mathbf{r}}_{q}\cdot {{\mathbf{R}}}_{q}\), where q are the sum is over the quadrons belonging to grain g. Therefore, Tr\(\{{{\mathbf{Q}}}_g\}\) quantifies the deviation of the quadrons around grain g from a kite form and, consequently, this is a measure of the net rotation of grain g relative to a global mean, which must be zero [20]. In other words, this quantity describes a local rotational fluctuation. It is constructive to consider

$$\begin{aligned} {\mathbf{P}}_g = {\varvec{\epsilon}}{{\mathbf{Q}}}_g {\varvec{\epsilon }}^{-1} = \sum _q \left( {{\mathbf{s}}}_{q}{{\mathbf{s}}}_{q} - {{\mathbf{t}}}_{q}{{\mathbf{t}}}_{q}\right) /2 , \end{aligned}$$
(5)

where \({{\mathbf{s}}}_{q}\) and \({{\mathbf{t}}}_{q}\) are shown in Fig. 1. The antisymmetric part of \({{\mathbf{C}}}_{q}\) can be written as \({\mathcal{A}}\{{{\mathbf{C}}}_{q}\}=A_{q}\varvec{\epsilon }\), with \(A_{q}=\frac{1}{2}|{\mathbf{r}}_{q}\times {{\mathbf{R}}}_{q}|\) being the area of the quadron q. The area associated with grain g is \(A_g=\sum _q A_{q} = {\mathcal{A}}\{{{\mathbf{C}}}_g\}\) and the total area of the system is \(A_{sys}=\sum _g A_g\).

Fig. 1
figure 1

The loop sides of the quadron q, whose diagonals are \({\mathbf{r}}_{q}\) and \({{\mathbf{R}}}_{q}\) and whose area is \(A_{q}\) (shaded), are the vectors \({{\mathbf{s}}}_{q}\) and \({{\mathbf{t}}}_{q}\). The symmetric tensor \({\mathbf{P}}_g\) can be written in terms of these vectors, \({\mathbf{P}}_g=\frac{1}{2}\sum _q\left( {{\mathbf{s}}}_{q}\otimes {{\mathbf{s}}}_{q}-{{\mathbf{t}}}_{q}\otimes {{\mathbf{t}}}_{q}\right) \), with q being all the quadrons belonging to grain g. Note that \({{\mathbf{t}}}_{q}=-{{\mathbf{s}}}_{q^{\prime }}\) if \(q^{\prime }\) is adjacent to q. Therefore, the sum over \({\mathbf{P}}_{q}\) inside a loop c vanishes identically irrespective of the loop shape

3 The problem

The first-principles derivation and, in particular, the ability to derive \({{\mathbf{Q}}}_g\) from local structural characteristics [20] were an important development, but a new problem emerged. The equations of a complete stress theory should have the same form when upscaled, which requires that \({{\mathbf{Q}}}_g\) can be coarse-grained systematically to arbitrarily large length-scales. This is problematic because the volume-average of \({{\mathbf{Q}}}_g\) over any region of space vanishes except for contributions from the region’s boundary. This renders the closure relation (2) a useless trivial identity in the continuum limit. To see this, consider a region \(\Gamma \), of boundary \(\partial \Gamma \), area \(A_{\Gamma }\), and \(N_{\Gamma }\sim L^2\) grains. We have \({{\mathbf{Q}}}_{\Gamma } = \langle {{\mathbf{Q}}}_g\rangle _{\Gamma } = {\varvec{\epsilon }}\langle {\mathbf{P}}_g\rangle _{\Gamma } {\varvec{\epsilon }}^{-1} = {\mathbf{P}}_{\Gamma }\) and the volume-average of \({\mathbf{P}}\) is

$$\begin{aligned} {\mathbf{P}}_{\Gamma } = \frac{1}{2A_{\Gamma }} \sum _{q} \left( {{\mathbf{s}}}_{q}\otimes {{\mathbf{s}}}_{q} - {{\mathbf{t}}}_{q}\otimes {{\mathbf{t}}}_{q} \right) . \end{aligned}$$
(6)

Let us partition the sum over neighbouring pairs in contact, g and \(g^{\prime }\), surrounding loop c. These terms cancel in pairs inside the loop because \({{\mathbf{t}}}_{q\in c}=-{{\mathbf{s}}}_{q^{\prime }\in c}\). It follows that the contribution of loops, fully enclosed within \(\Gamma \), to the sum (6) vanishes—only that of the quadrons along the boundary \(\partial \Gamma \) survives because those are not cancelled by neighbour quadrons. The vanishing of this sum is independent of the structural geometry, topology and grain shapes. It follows that \({\mathbf{P}}_{\Gamma }\sim 1/L \rightarrow 0\) as L increases, rendering (2) a trivial identity.

The method developed below consists of three steps. The first is by mapping the system into one with staggered order (SO), to be defined below. The second is coarse-graining the stress equations to the two-grain scale, with a fabric tensor that does not vanish identically to zero. The third step then proceeds as for any conventional coarse-graining method, by volume-averaging Q over increasingly large volumes until the desired continuum limit is reached.

4 The upscaling method

1. Packs with staggered order (SO)

The resolution of this problem is based on the observation that Eq. (2), which was developed for frictional systems, can be rewritten in terms of only half the degrees of freedom in systems possessing a SO. SO in granular packs means that grains can be labeled + and −, such that any + grain is in contact only with − grains and vice versa. This is tantamount to the condition that each loop is surrounded by an even number of grains [20]. In such systems, the upscaling procedure is in the three steps detailed below: partitioning the assembly into pairs of + and − in contact; coarse-graining the constitutive equation to the two-grain scale by writing the stress equations for unit pairs in terms of half the degrees of freedom; upscaling the constitutive equation by conventional volume averaging.

The general force moment on grain g is \({\mathcal{F}}_g = \sum _{h}{\varvec{\rho }}_{gh}\times {\mathbf{f}}_{gh}\), where h are the neighbours of g, \({\mathbf{f}}_{gh}\) the force that grain h exerts on g, and \({\varvec{\rho }}_{gh}\) are the position vectors of the contacts between g and h. The local stress on grain g is then \({\varvec{\sigma }}_g = {{\mathcal{F}}}_g / A_g\). The mean and differential stresses of a +/− pair are, respectively, \({\varvec{\sigma }}_m = ({\mathcal{F}}_+ + {\mathcal{F}}_-)/A_{pair}\) and \({\varvec{\sigma }}_d = ({\mathcal{F}}_+ - {\mathcal{F}}_-)/A_{\pm }\), where \(A_{\pm } = A_+ + A_-\) is the area associated with the pair. Averaged over a large region, \(\Gamma \), \(\langle {\varvec{\sigma }}_m\rangle _{\Gamma }\) converges to the traditional continuum stress field, with the local stress fluctuations \(\langle {\varvec{\sigma }}_d\rangle _{\Gamma } \sim 1/L \rightarrow 0\), with L the the system linear size. We combine the constitutive equations (3) for the pair, rearrange:

$$\begin{aligned} ({{\mathbf{Q}}}_+ + {{\mathbf{Q}}}_-):{\varvec{\sigma }}_m + ({{\mathbf{Q}}}_+ - {{\mathbf{Q}}}_-):{\varvec{\sigma }}_d= & 0 \nonumber \\ ({{\mathbf{Q}}}_+ - {{\mathbf{Q}}}_-):{\varvec{\sigma }}_m + ({{\mathbf{Q}}}_+ + {{\mathbf{Q}}}_-):{\varvec{\sigma }}_d= & 0 , \end{aligned}$$
(7)

and average over \(\Gamma \). The first equation becomes a trivial identity. The correlation between the two small quantities, \(\langle {\varvec{\sigma }}_d\left( {{\mathbf{Q}}}_+ + {{\mathbf{Q}}}_-\right) \rangle _{\Gamma }\) also decays with size, which leaves \(\langle ({{\mathbf{Q}}}_+ - {{\mathbf{Q}}}_-):\sigma _m\rangle = 0\), in which the subscript \(\Gamma \) was dropped for brevity. The averages of \({\mathbf{Q}}\) and \(\varvec{\sigma }\) decouple as \(\Gamma \) increases:

$$\begin{aligned} \langle ({{\mathbf{Q}}}_+ - {{\mathbf{Q}}}_-):\sigma _m\rangle = \langle {{\mathbf{Q}}}_+ - {{\mathbf{Q}}}_-\rangle :\langle \sigma _m\rangle . \end{aligned}$$
(8)

Since \(\langle {{\mathbf{Q}}}_+ + {{\mathbf{Q}}}_-\rangle = 0\) then \(\langle {{\mathbf{Q}}}_+\rangle =- \langle {{\mathbf{Q}}}_-\rangle \) and we can substitute this into (8) to obtain the upscaled relation

$$\begin{aligned} \langle {{\mathbf{Q}}}_{+} \rangle :\langle {\varvec{\sigma }}_m\rangle = 0 . \end{aligned}$$
(9)

This constitutive relation is a consistent coarse-grained version of the original one. Moreover, it has the significant advantage that the average of the constitutive quantity \({{\mathbf{Q}}}_+\) does not vanish identically on coarse-graining like the original equation. Thus, this resolves the coarse-graining problem in SO systems.

The method presented next aims to coarse-grain the fabric tensor in packings of frictional grains. Packings of ideally frictionless grains have been shown in [20] to be mappable naturally to systems of frictional grains that possess SO. This is done by first assuming that the grains are frictional and then introducing infinitesimally small ball bearings at the contact points. It has been shown that the resultant system remains isostatic. Thus, for frictionless systems, Eq. (9) can be coarse-grained straightforwardly by volume averaging and the following procedure is not required.

2. Extension to general GMs

In general GMs, there are almost always loops surrounded by odd numbers of grains (OL), which ‘frustrates’ the SO, as at least two same-sign grains must be in contact.

Fig. 2
figure 2

The frustration around an OL surrounded by even-edged loops. Labelling the grains around it alternately by + and −, leaves two neighbouring ‘frustrated’ grains with the same sign (\(g_0\) and \(g_f\)). Starting from a neighbour of \(g_0\) and labelling the next shell (thick lines), leaves another frustrated pair lying adjacent to the first one. Continuing this procedure shell by shell around the original OL, results in a line of such frustrated grain pairs emanating from it. This line is capped when it is incident on another OL

The extension of the above method to general systems is by renormalising the structure to lift the frustration. It is convenient to focus first on systems without 3-edge loops—the extension to include these will be described below. Consider a single OL, within a region of only even-edged loops, such as sketched in Fig. 2. Label the grains around it as + and − in the clockwise direction, alternatingly. The last grain, \(g_f\), is in contact with the first one, \(g_0\), and they are both −. Starting from a neighbour of \(g_0\), which does not belong to the OL, label similarly the first shell of loops surrounding the OL. With this shell’s loops being even-edged, it must contain exactly one frustrated pair of grains and these, which is adjacent to the pair \(g_0\)\(g_f\). Repeating this process shell by shell outwards, a continuous line of same-sign pairs emanates from the single OL, as sketched in Fig. 2. This line extends to the system boundary. However, if the line is ‘incident’ on another OL, it ends, as sketched in Fig. 2.

This observation is the key to renormalising the structure for lifting the frustration. Isolating same-sign grain pairs into lines and regarding each such pair as a rigid super-grain, we recover a SO structure! The procedure is the following. Firstly, identify all the OLs in the network. Next, partition the OLs into nearest pairs, minimising the overall number of contacts between them. Thirdly, identify a ‘frustration’ line between each OL pair, using the above method and avoiding crossing of these lines. Finally, declare each frustrated pair of grains a super-grain and compute its fabric tensor, Q as the sum of the fabric tensors of its constituents. The result is a system of rigid objects, some the original grains and some the super-grains, possessing a SO. Finally, use the above coarse-graining procedure to upscale the constitutive relation to regions of required size, namely, containing sufficient numbers of loops each.

Fig. 3
figure 3

The frustrated pair in a is joined into a super-grain, denoted by a dashed red line, in b. The area of the super-grain is the sum of the areas of its constituents, which is also the coefficient of the antisymmetric part of the renormalised geometric tensor \({\mathbf{C}}_{\mathrm{pair}}\). Since the renormalised fabric tensor \({\mathbf{P}}\) is the sum over the tensors of the frustrated grains, their common vectors \({\mathbf{s}}\) and \({\mathbf{t}}\) between the joined pair (thick black lines in a) are also eliminated in b, disposing of the effect of the contact point in the structural description. The stress field is unaffected by this because these vectors cancelled out anyway in the original structure. Therefore, the joining procedure is self-consistent (color figure online)

Although this renormalisation changes the local topology, it does not alter the forces on the original grains. Turning two grains into a super-grain eliminates the contact between them and consequently some quadrons, which are the descriptors and basic elements of the local structure. Since the structure tensor of the super-grain is the sum of those of its constituents, \({{\mathbf{C}}}_{\pm }={{\mathbf{C}}}_+ + {{\mathbf{C}}}_-\), then the area associated with the super-grain is \(A_{\pm }\varvec{\epsilon }= \mathcal{A}\{{{\mathbf{C}}}_{\pm }\} = \left( \mathcal{A}\{{{\mathbf{C}}}_+\} + \mathcal{A}\{{{\mathbf{C}}}_-\}\right) = \left( A_+ + A_-\right) \varvec{\epsilon }\), as expected. Another feature of the procedure concerns the physics of the stress field. Considering Eqs. (4), (6) and Fig. 3, note that the vectors \({\mathbf{s}}\) and \({\mathbf{t}}\), which originally extended between the eliminated contact point and the centres of the loops flanking it, cancel out and they do not play any role in the renormalised tensor \({{\mathbf{Q}}}_{\pm }\) that results from the pair of the eliminated grains. Since the stress–structure coupling can be mediated only by grain contacts, the removal of the effect of the eliminated contact point by the local renormalisation is significant - it underpins the self-consistency of the procedure with its local structural and geometrical interpretation.

3-edge loops are special because joining any two of their grains annihilates the loop altogether. Such loops are very sparse in isostatic frictional systems, whose mean number of loop edges is 6 (the result of Euler’s theorem). These loops are pre-processed before the upscaling to the two-grain scale, by merging the loop’s three grains into an initial super-grain. In the rare occasion that clusters of such 3-edge loops occur the entire cluster is merged into a super-grain. The de-frustrastion procedure is then applied to the resulting structure, which is devoid of 3-edge loops.

Once the 3-edge loops have been eliminated, the procedure described in the paper works for any concentration of odd loops and, in particular, when the entire system is made of them. Such systems are highly unlikely to occur but, if they do, the upscaling procedure would result in the two grains, shared by every pair of neighbouring loops, being joined into a super-grain. This loses an edge for each cell, making them all even-edged, and reduces the number of loops to a half.

Example

To illustrate the method, consider first the granular pack shown in Fig. 4. The underlying structure is ordered on a honeycomb-like lattice, possessing SO. A local defect has been introduced by expanding one loop into an octagon, generating two pentagonal neighbours. The latter are OLs, introducing two sources of local frustration. The structure tensor \({\mathbf{C}}\) is purely antisymmetric in the regular hexagonal regions and \({\mathbf{Q}}_g\) vanishes. The frustration defects, highlighted by ellipses in the figure, introduce a local finite fluctuation in the fabric tensor and we wish to calculate the renormalised effect on the constitutive relation after renormalising to SO. Carrying out the above joining procedure on the frustrated grains, and summing over the resulting \({\mathbf{Q}}\) tensors of the positive grains, we obtain the renormalised contribution:

$$\begin{aligned} {{\mathbf{Q}}}_{defect}=-\left( \begin{matrix} {\frac{3}{10}}&\quad {\frac{4\sqrt{3}}{5}} \\ {\frac{4\sqrt{3}}{5}}&\quad {\frac{3}{2}} \end{matrix}\right) . \end{aligned}$$
(10)

Substituting into (9), the local constitutive relation around the defect is then

$$\begin{aligned} \sigma _{xx} + 5\sigma _{yy} + \frac{16}{\sqrt{3}}\sigma _{xy} = 0 . \end{aligned}$$
(11)

Generally, adding a uniformly random distribution of defects at area density \(\rho \) to a defect-free isostatic system, of an initial fabric tensor \({{\mathbf{Q}}}_0\), the coarse-grained fabric tensor of the effective medium is \({{\mathbf{Q}}}_{em}=(1-\rho ){{\mathbf{Q}}}_0+\rho {{\mathbf{Q}}}_{defect}\). Using this constitutive relation together with (11) provides the stress equations at any desired length scale.

Fig. 4
figure 4

A granular Kagome structure, based on a honeycomb lattice, is ordered except for a defect consisting of an octagonal loop flanked by two pentagonal loops, which introduce two frustrated grain pairs. The coarse-graining is over all the positive grains, but only those near the defect with irregular areas (shown shaded) have a finite fabric tensor

It is useful to illustrate the issue with a system that is partly uniform and partly with defects. Suppose the uniform medium is the above honeycomb, deformed slightly to perturb the lattice’s symmetry, which trivialises the diagonal of \({{\mathbf{Q}}}_0\). Placing particles in contact on the vertices makes a Kagome structure. The deformation can be chosen to yield a range of fabric tensors of the form \({{\mathbf{Q}}}_0=Ka^2\left( {\begin{matrix} {1-\xi }&{-(1+\xi )} \\ {-(1+\xi )}&{1-\xi } \end{matrix}}\right) \), with K a constant and \(\xi <1\) [30]. For simplicity, I choose a deformation that yields \(\xi =1/4\). In the uniform medium, this gives rise to characteristics oriented at gradients \(\lambda ^{0}_1=1/3\) and \(\lambda ^{0}_2=3\) (A and B in Fig. 5). Let this medium fill the entire half-plane \(-\infty \le y\le \infty \) and \(0\le x\le \infty \). Now fill the the region \(x_0\le x\le \infty \) with the aforementioned defects at density \(\rho = 10\%\), the fabric tensor in this region is

$$\begin{aligned} {{\mathbf{Q}}}_{em}(x>x_0)=C^{te} \left( \begin{matrix} {1}&\quad {9+2.56\sqrt{3}} \\ {9+2.56\sqrt{3}}&\quad {4.44} \end{matrix}\right) . \end{aligned}$$
(12)

The resulting characteristics in this region are at gradients \(\lambda ^{em}_1\approx 0.17\) and \(\lambda ^{em}_2\approx 26.70\).

Applying at the origin the stress \(\sigma _0=\left( {\begin{matrix} {s_{xx}}&{0} \\ {0}&{0} \end{matrix}}\right) \) gives rise to stresses along the left two characteristic paths, A and B: \(\sigma _{A}=\frac{-3s_{xx}}{8}\left( {\begin{matrix} {1}&{3} \\ {3}&{9} \end{matrix}}\right) \) and \(\sigma _{B}=\frac{27s_{xx}}{8}\left( {\begin{matrix} {1}&{1/3} \\ {1/3}&{1/9} \end{matrix}}\right) \). These chains reach the boundary of the defect-filled region at points \((x_0,x_0/3)\) and \((x_0,3x_0)\), whereupon they act as boundary loads for the medium in \(x>x_0\). From each of these load sources emanates a pair of stress chains at gradients \(\lambda ^{em}_1\) and \(\lambda ^{em}_2\). The stresses along these paths is calculated using the method outlined in [24]. Figure 5 illustrates \(\sigma _{xx}/s_{xx}\) along the chains CDEF: \(-1.06275, -8.88825, 0.56475, 88.99425\), respectively.

Fig. 5
figure 5

The stress chain paths (gradients are not to scale for better illustration) in the defect-free (\(x<x_0\)) and defect-filled (\(x\ge x_0\)) regions. The blue (red) represent negative (positive) values of \(\sigma _{xx}\). The darker the shade and the wider the line the higher the stress magnitude (color figure online)

5 Conclusion

In summary, the problem of upscaling the stress equations of isostatic GMs is unique in that the volume average of the constitutive fabric tensor, which couples to the stress to close the field equations, vanishes in the large-scale limit. This has led to imposing phenomenological or empirical fabric tensors. Particular examples of such closures are the yield conditions, such as Mohr–Coulomb, in plasticity-based theories. This problem is resolved here from first-principles by developing a specialised upscaling method. The method is based on the observation that the constitutive relation can be written in terms of only half the degrees of freedom in ideally unfrustrated granular packs, whose volume average over Q need not vanish identically in the continuum limit. Using this observation, the closure equation is first upscaled to the two-grain scale in such systems and from then on coarse-grained to the continuum conventionally by volume averaging.

Since most granular structures are frustrated, a ‘de-frustration’ method has been developed to transform any planar granular structure into an unfrustrated one. The method is based on joining frustrated grain pairs to lift the local frustration. The procedure leads to a renormalisation of the local fabric tensor and an example of such a calculation for a simple system including two defects in an otherwise honeycomb-like structure has been illustrated. It should be noted that the ‘de-frustrated’ structure need not be, and in most cases is not, marginally rigid. However, this does not pose a difficulty because the original physical system is marginally rigid and therefore isostaticity theory applies regardless of the mathematical manipulation of the structure.

The unusual aspects of this upscaling procedure are a direct consequence of the vanishing of a straightforward volume averaging of the constitutive quantity Q, a feature that is not common in any other coarse-graining procedure. This difficulty necessitates an upscaling in several stages: (1) de-frustrating the system into one with SO; (2) upscaling to the two-grain scale by writing the closure equation for pairs of grains and using half the degrees of freedom; (3) conventional volume averaging of the renormalised Q over increasing lengthscales.

It would be interesting to test the method on systems in which both the structure and the forces can be visualised, such as the many sample systems produced in the lab of Bob Behringer [1,2,3,4,5]. Moreover, the problem is still outstanding for three-dimensional systems, which have not been discussed here. Work on extension of the method to such systems is ongoing.