Thrust network analysis is a form-finding method for shells in pure compression developed by Philippe Block. It extends the theory behind 2d graphic statics. This project implements the theory in the Processing environment.
Graphic statics for a 2d problem is well-known for its intuitive and visual way of determining the forces in a structure. The relation between form and force diagrams is similarly utilised for thrust network analysis by separating the horizontal and vertical equilibrium of a given shell represented by a discrete network. This is possible because only the load from gravity is considered.
The horizontal equilibrium is solved from the geometrical relationship between form and force diagram. Initially, the force diagram can be created from the centroidal dual of the form diagram. A closed polygon in the force diagram, following the directions of the edges meeting in that node, represents equilibrium in the corresponding node in the form diagram. However, the centroidal dual only provides the correct topology for the force diagram but the corresponding edges in the two diagrams are generally not parallel (or perpendicular), which is a necessity. An iterative process is used in an attempt to ensure this property but the initial form diagram is highly responsible for whether a solution exists or not. As a result, it is often necessary to adjust both the form and force diagram to obtain horizontal equilibrium. From the ratio between the length of an edge in the form diagram and the magnitude of the force deduced from the force diagram, it is possible to calculate the vertical force component resulting from moving the associated node in the z-direction. Hence, the heights of all nodes can be determined, as the sum of the vertical force components has to equilibrate the applied load.
The safe theorem states that it is sufficient to find one compressive solution within the structure’s cross-section to show that it is safe for the given loading.
The benefit from this form-finding method is its visual and intuitive representation of the forces in the shell, which helps to increase the understanding of the force flow. It is particularly strong because it separates the horizontal and vertical equilibrium thus allowing the designer to exploit the indeterminacy of the structure by modifying the force diagram and thereby changing the force flow. The effect of this action is observed as creases in the final shape, which helps to tie the structure down and thus reduce the height/span ratio (typically a problem for dynamic relaxation techniques unless a funnel scheme is used).
The Processing implementation features:
- Simple import from 3D modeling software (OBJ format)
- Support directions
- Generation of form and force diagrams
- Vertex, edge and face tagging
- Colouring of form/force diagram due to deviation from right angle constraint
- Mouse interaction (hovering) to highlight corresponding members in form/force diagram
- Methods to adjust form/force diagram to satisfy right angle constraint
- Laplacian smoothing of form diagram
- Optional display of input mesh contour to evaluate form adjustments
- Mouse interaction (dragging) with nodes in the force diagram to exploit indeterminacy and change the internal force distribution
- Fixed perimeter at support positions
- Verification of horizontal and vertical equilibrium
- Update of load distribution during simulation
- Generation of 3D thrust network with edge colouring according to the force distribution (blue = low, red = high)
- Visual representation of reaction forces scaled relative to the magnitude
- Output of bar forces
- Adjustment of thrust network height by slider values (gravity and scale of force diagram)
- Offset mesh and solid creation
- STL export option (automatic triangulation to comply with format) to 3D print individual solids