My inspiration for my shelter comes roofs of traditional Thai temples, which I find to be very elegant. I grew up in Thailand, and Thai roofs are an architectural element I really admire there.
Controlling geometry: My basic process was to split my roof along the z-axis. For each side, I created 3 lines (apex, base and mid point) and found points on them, listed them in groups such that I could simultaneously curve along the x-axis of the structure. I repeated this for both sides across the z-axis. The roof is asymmetric as one half is shorter and the base of the roof follows a sine wave.
Parametric variability. You can parametrically change the length, number of ribs, width, height, density and orientation of panels on this structure, as well as the amplitude and frequency of the sine wave on one half of the roof. Some parameters, such as height of the apex, can be changed to rescale the roof up to an extent, after which the geometry of the structure does change.