This grasshopper definition is to create a Hyperbolic tower with helix partition.
There are two features in this definition, first one is to use ‘function’ component to create geometry. The concept is explained in the image above. Basically, there are doughnut like floors through the whole tower, each has the same area. This was enabled by ‘function 2′ component that inputs are the area of the outer circles and the floor area you want. Then it will create the inner circles accordingly. Since each doughnut has the same area, the outer circumferences and the inner circumferences change at different rates.
The second feature is to create helix. Every helix created by grasshopper is basically products of data matching. By matching a series of numbers for Z-axis movement with a series of angles, you can easily create helix like geometry. The same logic can be used for creating staircase.