1 Introduction

Fig. 1.
figure 1

(a) A force diagram consisting of convex polyhedral cells with 377 number of faces resulting in (b) a (synclastic) compression-only form with 133 degrees of freedom; (c) and (d) two different (anticlastic) shells with both tension and compression members by assigning both negative and positive values to the edges of the form (a).

Research in geometry-based structural design methods for the design of spatial efficient architectural structures has recently received a lot of attention among researchers and designers around the world [1, 4, 6,7,8, 12, 15]. In these methods, commonly known as graphic statics, the equilibrium of spatial structural forms are represented by a geometric diagram, called the force diagram. The geometric entity of the internal and external forces is quite tangible in understanding the force equilibrium of complex structural forms for designers, researchers and practitioners and provides a unique design domain. In geometry-based form finding, a designer can design the geometry of the force diagram and control the topology and geometry of various spatial structural forms in equilibrium for given boundary conditions. For instance, Thrust Network Analysis is a powerful geometry-based form finding method that has been used in finding efficient and elegant compression-only surface structures with free-form geometry [8, 9] (Fig. 2a). The combination of such compression-only shells with funicular tension rings can generate non-conventional expressive shells with open edges [20] (Fig. 2b). In the context of the recently-developed 3D graphic statics based on polyhedral reciprocal diagrams [1, 14, 15, 19], particular design techniques such as aggregation and subdivision of convex force polyhedrons can result in a variety of spatial structural forms for a given boundary conditions [3, 5]. In addition, it has also been shown that reducing the areas of faces of the force diagram to zero results in spatial structural forms with certain tension members (Fig. 2c) [10, 13].

1.1 Motivations and Objectives

In all mentioned examples, the primary emphasis was given to the force diagram and the magnitude of internal and external forces in deriving structural solutions. However, there is a limited investigation of the geometric properties and the configuration of the resulting structural forms specifically polyhedral diagrams of 3D graphic statics considering their intricate planarity constraints. Parallel manipulation of polyhedral diagrams which preserves their planarity constraints within a given equilibrium states/force diagram was briefly addressed in the literature [17]. However, further clarification on the geometry properties of these diagrams and their potential in generating non-conventional equilibrium states in three dimension needs further research. This paper will use the Geometric Degrees of Freedom (GDoF) to explain parallel polyhedral transformations and will expand on the necessary computational methods to compute the GDoF for spatial networks. This work is based on a recent algebraic formulation for construction of reciprocal diagrams of 3D graphic statics [2, 11]. However, the primary emphasis will be on the design exploration of non-conventional spatial structural solutions. Moreover, this research will show how a designer can parameterize the solution space to gain control over all the edges of a polyhedral geometry to generate various non-trivial solutions for a single force diagram and will enhance our understanding of the different configuration of equilibrium in the three-dimensional space. For instance, a compression-only structural form can turn into a compression-and-tension combined system without changing its equilibrium and the magnitude of internal forces and external loads as illustrated in Fig. 1.

Fig. 2.
figure 2

(a) Armadillo vault design and engineered by Block Research Group at Venice Biennale [9]; (b) a funicular funnel shell model consisting of a compression-only shell with a tension-tie around its edges [20]; (c) Hedracrete funicular spatial structure with a compression body and tension members on the top [13].

2 Methodology

We will first show the geometric degrees of freedom of a given network in 2d or 3d. And then we talk about the geometric degrees of freedom in reciprocal diagrams of 3D graphic statics and show how using these geometric transformations will result in exploring non-conventional domain of solutions for the same equilibrium of forces and the same absolute magnitude of force. i.e. the combination of tension and compression internal forces.

2.1 Geometric Degree of Freedom in Transformation of a Network

If we have a 3D/2D network consisting of closed (non)planar polygons, sometimes design necessities requires us to geometrically transform the network while keeping all its edges parallel to the original network Fig. 3a, b. In other words, we need to keep all polygons within the network closed while possibly changing their edge lengths.

Mathematically, we can write equations for each polygon \(f_i\) of the network, in 2d or 3d. Around each polygon \(f_i\) we choose a consistent orientation of the edges. We will denote the direction vector corresponding to the edge \(e_j\) by \(\mathbf e _j\). Since each face provides a closed loop of edges, the sum of the edge vectors has to be the zero vector. Thus, we obtain a vector equation for the edge lengths \(|e_j|\) as

$$\begin{aligned} \sum _{e_j}{} \mathbf e _j|e_j|=\mathbf 0 \end{aligned}$$

where the sum runs over the edges \(e_j\) of the face \(f_i\).

This vector equation is satisfied, if and only if the x-, y- and z-coordinates of the left-hand side equal to zero. Hence, each polygon \(f_i\) provides three equations for the edge lengths, and we obtain a \([3f \times e]\) matrix, \(\mathbf A \) describing the geometry of the network. Here f denotes the number of closed polygons and e denotes the number of edges in the network. In other words, we have a linear equation system

$$\begin{aligned} \mathbf A {} \mathbf q =\mathbf 0 \end{aligned}$$
(1)

where \(\mathbf q \) denotes the vector of edge lengths.

Each solution of the linear equation system represents a network, whose edges are parallel to their associated edges of the original network with a different edge lengths.

The dimension of the solution space of the equation system 1 is the geometric degrees of freedom of the network (GDoF). This dimension is \(e-r\) where r is the rank of the matrix \(\mathbf A \). In other words, there are \(e-r\) edges in the network whose edge lengths can be independently changed resulting in a unique network with parallel edges to the original network. If \(e-r = 1\), then there is a unique network up to scaling with the given edge directions. If \(e-r>1\), then there are multiple, significantly different (different up to scaling) networks.

Fig. 3.
figure 3

(a) Simple network in 3d with planar faces and its projection to 2D highlighting the geometric degrees of freedom; and (b) A transformed graph based on changing the lengths of the independent edges where the highlighted me.bmrs represent the independent edges in the network.

2.2 GDoF in the Context of 3D Graphic Statics

In the context graphic statics, we have two reciprocal networks that are geometrically dependent and topologically dual where the change of one affects the properties of the other. Let us call the starting diagram the primal, \(\varGamma \), and the reciprocal polyhedron the perpendicular dual, \(\varGamma ^\dagger \) (Fig. 4a, b). The vertices, edges, faces, and cells of the primal are denoted by v, e, f, and c respectively, and the ones of the dual are super-scripted with a dagger (\(\dagger \)) symbol (Fig. 4a, b). Each face of one diagram is perpendicular to the edges of the other and the area of the faces of the force diagram represents the magnitude of the force in the corresponding edge in the form. We can construct the dual from a given primal by developing algebraic constraints between the two diagrams [2, 11]. We briefly visit the methodology in the next section.

Fig. 4.
figure 4

(a) An input force polyhedron as primal and its corresponding (b) funicular polyhedron as the dual; (c) going around each edge of the primal with its attached faces (c) provides the direction of the edge vectors of the corresponding face (e) in the reciprocal diagram where the sum of the edge vectors must be zero.

2.2.1 Developing the Algebraic Constraints

Our first step in developing the algebraic constraints is to choose an arbitrary unit normal vectors \(\mathbf {n} _j\) for every face \(f_j\) of the primal \(\varGamma \). In Fig. 4a, consider an edge \(e_i\) of the primal diagram and all its attached faces \(f_1\), \(f_2\), ..., \(f_k\). The edge \(e_i\) is reciprocal to a face \({f_i}^\dagger \) in the dual. By moving the thumb along the direction of the edge, the fingers curl around the edge going through the attached faces establishing a consistent orientation of the edges \({e_j}^\dagger \) of the face \({f_i}^\dagger \) of the dual. We will denote these directed edges of the dual by \({\mathbf{e }_j}^\dagger \).

Since the face \({f_i}^\dagger \) is a closed polygon, the sum of the edge vectors \({\mathbf{e }_j}^\dagger \) should be zero. Hence, we obtain a vector equation similar to Eq. 1

$$\begin{aligned} \sum _{f_j} {\mathbf{e }_j}^\dagger q_j=\mathbf 0 \end{aligned}$$

where the sum runs over the attached faces \(f_j\) of the edge \(e_i\) of the primal \(\varGamma \), and \(q_j\) denotes the edge length of \({e_j}^\dagger \) in the dual \(\varGamma ^\dagger \). We can rewrite the above equation in terms of the chosen unit normal vectors \(\mathbf {n} _j\) as

$$\begin{aligned} \pm \mathbf{{n} }_1q_1\pm \mathbf{{n} }_2q_{2}\pm ...\pm \mathbf{{n} }_kq_{k}=\mathbf{0 } \end{aligned}$$
(2)

where we have

$$\begin{aligned} {\left\{ \begin{array}{ll} +\mathbf {n} _{i} &{} \text{ if } \text{ matches } \text{ the } \text{ curl } \text{ direction } \text{ around } e_i\\ -\mathbf {n} _{i} &{} \text{ otherwise. } \end{array}\right. } \end{aligned}$$

Similarly, as before, each vector equation yields three linear equations for the edge lengths, and we obtain a linear equation system for the edge length vector \(\mathbf q \) which can be described by a \([3e\times f]\) matrix that we call the equilibrium matrix \(\mathbf A \):

$$\begin{aligned} \mathbf A {} \mathbf q =\mathbf 0 . \end{aligned}$$
(3)

Here e denotes the number of edges of the primal diagram and f denotes the number of faces of the primal diagram.

We remark that we can significantly decrease the number of equilibrium equations [2, 11].

2.2.2 Transformation of the Form Diagram

The dimension of the solution space of Eq. 3 is the geometric degrees of freedom of the form diagram. This dimension equals \(f-r\) where r is the rank of the equilibrium matrix \(\mathbf A \).

If \(f - r = 0\), then the only possible solution of the equilibrium equation system is the zero vector, in that case, the dual collapses which we do not consider a solution. If \(f-r=1\), then there is a unique solution (up to scaling) which provides a unique dual diagram (up to scaling). Finally, if \(f - r >1\), then there are multiple significantly different non-trivial solutions that is the main concentration of this paper and will be explained in detail in the following sections.

2.3 Generating Solutions

Previously, we provided three numerical methods including Reduced Row-Echelon Form (RREF) approach, Moore-Penrose Inverse method (MPI) and Linear Optimization (LP) method to generate solutions of Eq. 3 [11]. The RREF method allows us to identify the independent edges and define their initial lengths to generate structural forms. However, this method does not provide a full control over the lengths of the rest of the members. Besides, the Linear Optimization method allows us to find solutions with all positive edge lengths which results in well-known compression/tension only structural forms. In this section, we explain how the Moore-Penrose approach allows for the design exploration of a variety of spatial equilibrium configurations with combined tension and compression members that are relatively unknown. It can also provide a framework to generate many interesting, symmetric dual diagrams starting from a symmetric primal diagram.

To solve Eq. 3 such that we could assign weights to all the edges of the diagram for design purposes, we need to rewrite the Eq. 5 in a format that allows for a parameterization of its solution space. The parameterization of the solution is possible by using the Moore-Penrose inverse (MPI) of \(\mathbf A \) denoted by \(\mathbf A ^{+}\) which satisfies the following matrix equations

$$\begin{aligned} \mathbf A {} \mathbf A ^{+}{} \mathbf A =\mathbf A \quad \text{ and }\quad \mathbf A ^{+}{} \mathbf A {} \mathbf A ^{+}=\mathbf A . \end{aligned}$$
(4)

From the first equality, any vector \(\mathbf q \) of the form

$$\begin{aligned} \mathbf q =(\mathbf I -\mathbf A ^+ \mathbf A )\xi \ \end{aligned}$$
(5)

Solves the Eq. 3 where \(\mathbf I \) is the \([f\times f]\) identity matrix and \(\xi \) is any \([f\times 1]\) column vector.

Indeed, let us compute the vector \(\mathbf A {} \mathbf q \) for \(\mathbf q =(\mathbf I -\mathbf A ^+ \mathbf A )\xi \):

$$\begin{aligned} \mathbf A {} \mathbf q =\mathbf A (\mathbf I -\mathbf A ^+ \mathbf A )\xi =(\mathbf A -\mathbf A {} \mathbf A ^+\mathbf A )\xi . \end{aligned}$$

This vector is the zero vector according to the Eq. 4.

In fact, all solutions of the Eq. 3 will have the form of Eq. 5 [16, 18]. Hence, MPI can not only generate all the solutions of the equilibrium equations, bu it will also provide a parameterization of the solutions as the vector \(\xi \). Note that a designer can assign various weights to the components of the vector \(\xi \) and explore various equilibrium solutions. In the following sections, we will show the use of this approach in deriving various equilibrium configuration in the three-dimensional space.

2.3.1 Symmetry

In some cases, generating symmetric solutions is preferable. We will show how to use the MPI method to obtain symmetric dual solutions for the symmetric primal input. We assume that the primal diagram is symmetric, namely there is a linear transformation (rotation/reflection) of the three dimensional ambient space which permutes the vertices, edges, faces and cells of the primal diagram. We call the permutation of the edges by \(\sigma _e\) and the one of the faces by \(\sigma _f\) as a result of a linear transformation. In fact, \(\sigma _e\) is a function that receives \(e_j\) and generates the edge \(e_k\) which is the image of \(e_j\) under the linear transformation. To avoid complexity, we will denote this edge by \(\sigma (e_j)\). Similarly, we will denote the image of the face \(f_i\) under the linear transformation by \(\sigma (f_i)\).

Moreover, there is a \([3\times 3]\) matrix \(\mathbf M \) (the matrix of the linear transformation), which maps the chosen normal vector \(\mathbf n _{f_i}\) of each face \(f_i\) of the primal to the chosen normal vector (or its opposite) of \(\varvec{\sigma }(f_i)\):

$$\begin{aligned} \mathbf M {} \mathbf n _{f_i}=\pm \mathbf n _{\sigma (f_i)}. \end{aligned}$$
(6)

Furthermore, all the faces attached to edge \(e_j\) will be mapped to faces attached to \(\sigma (e_j)\). As a consequence, the linear transformation also induces non-trivial relations between the equilibrium equations. For instance, the equilibrium equation for a permuted edge \(\sigma (e_j)\) similar to Eq. 2 will be

$$\begin{aligned} \mathbf 0 =\sum _{\sigma (f_i)} \pm q_{\sigma (f_i)}{} \mathbf n _{\sigma (f_i)} \end{aligned}$$

where \(\sigma (f_i)\) are the faces attached to the edge \(\sigma (e_j)\)), and we can rewrite this equation as

$$\begin{aligned} \mathbf 0 =\sum _{f_i} \pm q_{\sigma (f_i)}{} \mathbf M {} \mathbf n _{f_i}. \end{aligned}$$

Algebraically, the above discussion can be summarized as follows. A symmetry of the primal diagram provides two invertible matrices \(\mathbf E _\sigma \) and \(\mathbf F _\sigma \) encoding the linear transformation as

  • \(\mathbf E _\sigma \) encodes the permutation of the edges and the \([3\times 3]\) matrix \(\mathbf M \) acting on the chosen normal vectors (as well as on the x-, y- and z-coordinates); and

  • \(\mathbf F _\sigma \) encodes the permutation of the faces.

so that \(\mathbf E _\sigma \mathbf A \mathbf F _\sigma = \mathbf A \).

Based on Eq. 6 the dual diagram has a symmetry given by the same linear transformation provided that \(\mathbf F _\sigma \mathbf q =\mathbf q \). This property can be achieved by choosing the parameter of the Moore-Penrose inverse method in the following way.

Proposition 1

Assume that the equation

$$\begin{aligned} \mathbf F _\sigma \xi =\xi \end{aligned}$$
(7)

holds for the parameter \(\xi \) of the Moore-Penrose Inverse Method. Then,

$$\begin{aligned} \mathbf F _\sigma \mathbf q =\mathbf q . \end{aligned}$$

Proof

The Moore-Penrose inverse of the matrix \(\mathbf E _\sigma \mathbf A \mathbf F _\sigma \) is \(\mathbf F _\sigma ^{-1}{} \mathbf A ^+\mathbf E _\sigma ^{-1}\). Since \(\mathbf A =\mathbf E _\sigma \mathbf A \mathbf F _\sigma \), we have

$$\begin{aligned} \mathbf A ^+=\mathbf F _\sigma ^{-1}{} \mathbf A ^+\mathbf E _\sigma ^{-1}. \end{aligned}$$

As a consequence, if \(\mathbf q =(\mathbf I -\mathbf A ^+\mathbf A ) \xi \), then

$$\mathbf F _\sigma \mathbf q = \mathbf F _\sigma (\mathbf I -\mathbf A ^+\mathbf A )\xi = \mathbf F _\sigma \xi - \mathbf F _\sigma \mathbf A ^+\mathbf A \xi =\mathbf F _\sigma \xi - \mathbf F _\sigma \left( \mathbf F _\sigma ^{-1}{} \mathbf A ^+\mathbf E _\sigma ^{-1}\right) \left( \mathbf E _\sigma \mathbf A \mathbf F _\sigma \right) \xi . $$

We simplify this expression

$$\begin{aligned} \mathbf F _\sigma \mathbf q =\mathbf F _\sigma \xi -\mathbf A ^+\mathbf A \mathbf F _\sigma \xi . \end{aligned}$$

Now, we use the assumption that \(\mathbf F _\sigma \xi =\xi \) to obtain

$$\begin{aligned} \mathbf F _\sigma \mathbf q =\xi -\mathbf A ^+\mathbf A \xi =\mathbf q \end{aligned}$$

which concludes the proof.   \(\Box \)

3 Design Applications

Before we describe multiple design examples to manifest the strength of this method in finding non-conventional and non-intuitive structural configuration, let us explain how a single convex force cell can describe multiple equilibrium states of a single node in 3D including both compression and tension forces. Figure 5a shows a closed force polyhedron \(\varGamma \) with five sides where the normal directions \(\mathbf n _{a-l}\) are toward inside of the cell. Each face corresponds to the direction and the magnitude of the force in the reciprocal member in the \(\varGamma ^\dagger \). If we consider that all the members in the \(\varGamma ^\dagger \) have positive edge lengths then \(\varGamma _1^\dagger \) represent a compression-only node. However, if any of the members of the \(\varGamma ^\dagger \) has a negative length, then the system can represent a system with both tension and compression forces. Thus, \(\varGamma _{2-5}^\dagger \) all represent various configurations that the node \(v_i\) can be in equilibrium with the same absolute magnitude of the forces but positive and negative edge lengths. This property allows the design exploration of a variety of structural solutions within the same equilibrium state as we explain in the following examples.

3.1 Shell Structures with Both Tension and Compression Members

In the first example, we start with a commonly known compression-only shell and show how our method allows for a designer to go beyond the compression-only solutions as illustrated in Fig. 1. The force diagram of this design includes convex cells and 377 faces that will result in a compression-only shell configuration with 133 degrees of freedom. i.e., if we merely use the RREF method to generate the geometry of the form, we can only assign 113 edge lengths to construct the form diagram with no control over the rest of the edges. The compression-only shell \(\varGamma _1^\dagger \) includes some design features as undulating edges \(e_{j-m}\) connected by a series of parallel edges \(e_{i-n}\) on its surface. MPI method as explained in this paper allows us to assign weights to all members of the form and explore various equilibrium geometries. For instance \(\varGamma _2^\dagger \) represents a compression and tension combined shell where all the parallel edges \(e_{i-n}\) of \(\varGamma _1^\dagger \) has received positive values while the undulating edges \(e_{j-m}\) received negative weights in the calculation of the results (Fig. 1c). Assigning positive values to the undulating edges and negative values to the parallel ones generates \(\varGamma _3^\dagger \) with the opposite direction of the forces in the boundary conditions. The most promising feature of using this method in design is that a designer can have direct control over designing synclastic structural forms such as a compression-only shell as well as anticlastic structural forms with both tension and compression members for the same boundary conditions. Moreover, all the faces of these structural configurations are planar due to the planarity constraints of the reciprocal polyhedrons which significantly facilitates their fabrication process.

Fig. 5.
figure 5

A single indeterminate force polyhedron can also represent the equilibrium of multiple system of forces including compressive (black) and tensile (red) forces.

Fig. 6.
figure 6

(a) A force diagram with 66 faces and convex polyhedral cells; (b) a tension-only reciprocal structural form with GDoF 9; (c)–(f) various spatial configurations with both compression and tension members for the same force diagram.

Fig. 7.
figure 7

(a) A force diagram including 116 faces and (b) a tension-only spatial structural form with 11 GDoF; (c) change in the lengths value of certain edges results in spatial structural forms with both tension and compression members with planar faces as shown in (c) and (d).

3.2 Spatial Structures with Both Tension and Compression Members

Figure 6 shows a force diagram with 66 faces and convex polyhedral cells which results in a spatial form with 9 geometric degrees of freedom. Figure 6c–f shows various spatial configurations with both tension and compression forces by assigning both positive and negative values to the edge members of \({\varGamma ^1}{\dagger }\) with all negative edge lengths. For instance, in Fig. 6c edges \(e_{5}\) and \(e_7\) have received positive values while other edges received negative values. Note that this spatial configuration does not include an internal cell and visiting a system with such property might open the possibility to design counterintuitive equilibrium states in the three-dimensional space. Figure 7 shows multiple spatial configurations with both tension and compression members derived from the same force polyhedron. Following the location and the of the tagged members of each spatial solution \(\varGamma _{1-3}^\dagger \) shows the changes in their lengths for each configuration. One interesting feature in these solutions is the formation of non-convex polyhedral cells in the resulting forms. For instance, note the middle convex cell in the structural form of \(\varGamma _{1}^\dagger \). This convex cell will turn into a non-convex cell with two concave faces in \(\varGamma _2^\dagger \) and a non-convex cell with four concave faces in \(\varGamma _3^\dagger \).

4 Conclusion

This paper expanded on the geometric properties of structural forms in the context of polyhedral graphic statics and explained a method to find the geometric degrees of freedom of networks to generate non-conventional architectural structures in three-dimensional space. Finding GDoF of a network allows the user to precisely choose certain edge lengths in a network and find a unique solution based on the assigned values. However, in certain cases, the precise edge lengths of certain edges are not preferable, and the designer wants to gain control by assigning weights to certain edges in the network and observe the result. Moreover, a designer cannot design on which edges of the network to work with. Thus, using GDoF is not enough to fully control the behavior of a spatial network. To address the mentioned limitation, this paper went beyond the GDoF and provided a method to parameterize all the members of a network. As a result, a designer can assign weights to all edges in a network to control the design properties as well as the behavior of the solution. The current method does not allow the precise control of the edge lengths and depending on the complexity of the network; it might take many design iterations to fulfill specific design criteria. Thus the user experience aspect of this method should be investigated and improved in the future.