I was working on a project in which I had to make a binary tree of cylinders. Essentially I just had to make a cylinder, then two smaller ones, then four even smaller ones and so on. The challenge was to model the lungs, so that the cylinders combined had a total volume V of 6L, a lateral surface area L of 70m2 and a total height h of 2400km.
I made an approximation in matlab through trial and error, playing around with multiple dividers in a for-loop and got close (V = 6.0002L, L = 70.133m2, h = 2398km). I've since been obsessing over it because I'm convinced there's a more elegant solution. A scaling factor that will make the each sum converge at exactly the right value.
I've been messing with it for a few days but I can't get it to work.
In most of my attempts, I can get two correct parameters and one that's off. So if V = 6L and h = 2400km, L will be off.
I made some sketches that explain the concept http://imgur.com/a/JbTuX. There's also a bit of math because my logic while drawing this was that the solution could be found using series, since I want each parameter to converge at a specific value.
The sketches don't show the scaling factor. I was hoping that in writing the series out I would spot something useful.. I didn't..
Answer
Introduce a scaling factor α<1 per generation for the radius and a scaling factor β<12 per generation for the the height of the elementary cylinders. Let V0 be the volume, L0 be the lateral surface, and H0 be the height of the starting cylinder. Denote by Vn, Ln, Hn the sum of the volumina, lateral surfaces, and heights in the nth generation, and finally by V, L, and H the ovaral sum of these quantities. Then one has the recursions
Vn+1=2α2βVn,Ln+1=2αβLn,Hn+1=2βHn(n≥0) .
By the formula for the sum of geometric series it follows that
V=∞∑n=0Vn=11−2α2βV0,L=∞∑n=0Ln=11−2αβL0,H=∞∑n=0Hn=11−2βH0.
Now choose α, β, V0, L0, and H0 suitably in such a way that your requirements are met. Note that you cannot choose α and β independently and arbitrarily since the initial variables V0=πR20H0, , L0=2πR0H0, and H0 have to satisfy the identity L20=4πV0H0.
If you envisage only N generations then the formulas (1) have to be replaced by
V=N−1∑n=0Vn=1−(2α2β)N1−2α2βV0,L=N−1∑n=0Ln=1−(2αβ)N1−2αβL0,H=N−1∑n=0Hn=1−(2β)N1−2βH0.
In this case α, β, and N should better not be unknowns in the design process, but parameters fixed in advance.
No comments:
Post a Comment