Personalized Fountains that Create 3D Shapes Out of Waterrutad/files/fountain.pdf · and follows...

Post on 21-Feb-2020

0 views 0 download

Transcript of Personalized Fountains that Create 3D Shapes Out of Waterrutad/files/fountain.pdf · and follows...

Personalized Fountains that Create 3D Shapes Out of Water

Ruta Desai and Arun Srivatsan{rutad,arangapr}@andrew.cmu.edu

A. B.

Fig. 1. Existing fountains: (A) Fountains with simple 3D shapes (B)Fountains which use light projections for visualization of shapes

I. PROBLEM AND MOTIVATION

Fountains are a piece of architecture that have been inexistence for a very long time. Originally they were purelyfunctional providing water for drinking and bathing andslowly they began to be used as a source or decorationand entertainment in personal and public spaces. Till datedesigning water fountains to create jets of water that form anoverall shape is a work or art. To the best of our knowledge,there is no structured procedure to design a fountain thathas water jets forming a desired overall shape. Some of themodern fountains especially the ones used in theme parks uselight projections or simple 3D shapes (Fig. 1). We proposeto use 3D printed fountain-heads to create user-defined 3Dshape from water jets. We envision a tool that will take asinput a CAD model of a desired 3D shape from a user andautomatically generate a fountain-head that can be 3D printedand connected to a water source to create a fountain of thedesired shape.

II. BACKGROUND AND TOOLS

Fountains were originally purely functional, connected tosprings or aqueducts and used to provide drinking water andwater for bathing and washing to the residents of cities, townsand village. In addition to providing drinking water, fountainswere used for decoration and to celebrate their builders. FromRoman times until the end of the 19th century, fountainsoperated by gravity, requiring a source of water higher thanthe fountain itself to make the water flow. The greater thedifference between the elevation of the source of water andthe fountain, the higher the water would go upwards fromthe fountain.

From the beginning of the 19th century, fountains ceasedto be used for drinking water and became purely ornamental.By the beginning of the 20th century, cities began usingsteam pumps and later electric pumps to send water to thecity fountains. Later in the 20th century, urban fountainsbegan to recycle their water through a closed recirculating

system. An electric pump, often placed under the water,pushes the water through the pipes. The water must beregularly topped up to offset water lost to evaporation, andallowance must be made to handle overflow after heavy rain.

Developing water fountains that take up a desired 3d shapehas primarily been considered a work of art ever since thetime of Renaissance [1]. A lot of work has been writtenin books of architecture to describe the construction andfunctioning of water fountains [3]. The book “The Theoryand Practice of Gardening” by Dezallier d’Argenville (1709)showed different types of fountain nozzles which wouldcreate different shapes of water, from bouquets to fans.However, to the best of our knowledge there doesnt exista procedural framework to design the fountainhead that cancreate jets of water the assume a desired 3D shape. Most ofthe water fountains are designed to take up simple shapesas shown in Fig. 1A, which are usually abstract formscreated from an artist’s imagination. Using a combination ofsymmetric placement of water jets, controlling speed of waterflow and synchronizing the flow rate with music has been theprime mode of operation of most of the water fountains. Yooet al [2] discuss a framework to create musical fountains bysynchronizing patterns in music to the flow rates of waterjets in a water fountain.

There has been an interest in the graphics communityto model water jets in fountains such as in [4]. Particleflow is the commonly used technique to describe drops ofwater in physics engine and simulate their flow. Commercialsoftwares such as Autodesk inventor have particle flowfeatures developed in them to allow user to simulate waterfountains [5]. In this work, we plan to first use simple physicsbased models to describe jets of water and subsequentlymove on to more complicate models as described above. Weuse Matlab for all the computations as well as visualizations.For generating the CAD models we use Solidworks andprovide a discussion towards the end as to how the modelsare parametric and opensource softwares such as OpenSCADcan be used as an alternative. In this project, we use gravityto aid us in creating the required water jets. However, weprovide a discussion in the end as to how the design can beadapted to be compatible with an electric pump. And finallywe make use of the Cube 3D printer available at the IDEATElab facilities for all the 3D printing requirements.

III. INITIAL DESIGN IDEAS

One of the most important requirements of this project isto generate water jets of desired shape. In order to do thesame we take inspiration from various principles governing

Fig. 2. Tube with same inlet cross sectional area but different outlet crosssectional area

Fig. 3. Schematic of the experimental setup

the motion of fluids in physics and try to design fountainheads based on the same. We observe that some of theprinciples are easier to realize in reality than others primarilydue to practical factors such as satisfying assumptions ofstreamlined flow, frictionless surface etc.

A. Varying output diameter

From observation we know that when the outlet of a waterhose is constricted, the water jet ejects form the hosepipewith greater velocity. This intuitively suggests that varyingthe cross sectional area of the water jet outlet can help varythe velocity of the water jet.

As a result we created a number of jet outlets as shown inFig. 2 which the same input cross section but varying outputcross sectional area. From equating the flowrate of the waterat the inlet and outlet we obtain:

Ainletvinlet = Aoutletvoutlet (1)

And since Ainlet > Aoutlet, voutlet > vinlet and henceexpect the water flowing through the outlet to have a highervelocity. Upon passing water through the jet outlets of dif-ferent cross sectional area, we observe that water jets indeedhave varying velocities, however the variation in velocitydoesnt seem to vary with the variation in cross sectionalarea as expected from theory. Upon studying the physicsmore rigorously we realized that the change in velocity hadnothing to do with the change in cross-sectional area, because

irrespective of the cross sectional area of the outlet, fromBernoulli’s theorem.Applying Bernoulli’s principle betweenpoint (1) and (2) in Fig. 3.

P + ρgh+1

2ρv2 = constant

Patm + ρgH = Patm + ρgh1 +1

2ρv2outlet

⇒voutlet =√2g(H − h1)

Applying Bernoulli’s principle between (1) and (3), weobtain:

Patm + ρgH = Patm + ρgh2 +1

2ρ02

⇒h2 = H

Changing Aoutlet only affects vinlet while voutlet remainsconstant. In that case one would wonder as to why doeschanging outlet cross sectional area affect the velocity asobserved from the experiments at all. The reason for thatchange in velocity was that, for very small outlet crosssectional area, the flow of water is not very stream lined. Therough wall surfaces resulting from the 3D printing processdisturbs the flow and prevents it from being streamlined. Asa result effects such as viscous drag and surface tension alterthe velocity of the water jet. However upon increasing theoutlet cross sectional area, the flow gets more streamlinedand follows Bernoulli’s principle more closely.

1) Lessons learnt: Even though varying the outlet toobtain jets with varying velocities did not work out due tosome misconception and lack of proper understanding of thephysics behind the flow, there were some positives to carryforward. The following are some lessons that we learnt:

• Just changing the outlet cross sectional area wouldnot produce water jets with varying velocities unlesswe model the friction, viscosity and local temperaturechange effects carefully.

• Jets of same thickness is visually more acceptable, elsethe thicker jets seem to dominate the overall shape andthe details provided by the thinner jets are lost.

• We could experimentally figure out that for parts 3Dprinted with the Cube printer, what outlet diameterproduces a water jet that closely follows the streamlinedassumptions.

B. Venturi effect

The Venturi effect is the reduction in fluid pressure thatresults when a fluid flows through a constricted section ofpipe. In fluid dynamics, a fluid’s velocity must increase as itpasses through a constriction in accord with the principle ofcontinuity, while its static pressure must decrease in accordwith the principle of conservation of mechanical energy.Thus any gain in kinetic energy a fluid may accrue due toits increased velocity through a constriction is balanced bya drop in pressure. This principle has been used to measureflowrate of fluid in tubes and the device used is called aventuri meter.

Fig. 4. Schematic of a Venturi meter

Fig. 5. Prototype of a fountainhead designed based on venturi effect andits cut section view

Fig. 4 shows the schematic of a venturi meter. We observethat water rises to different heights when tubes are placed inregions of the tube with varying cross sectional area. As aresult we decided to use a fountain head in the shape ofa venturi with varying internal diamter and outlets placedon top of the regions without varying cross sectional areato obtain water jets that shoot to different heights. Fig. 5shows the prototypes of fountain heads based on venturieffect that we designed. Based on the experience with theprevious idea, we designed all the holes ot have the samecross sectional area. 3D printing allows us to easily fabricatesuch complicated internal shape of the tube with holes. Weobserve that when water is passed through the fountainhead,after passing through the constriction, water never fills upthe tube and as a result the water comes out only throughthe holes present before the constriction and not after. Wedecided to circumvent this problem by closing one of theends of the fountainhead so that water would stay filled inthe tube, however after this the water jets rising from theholes did not match the expected jets from theory. Part ofthis was because the flow of water got turbulent after hittingthe plugged up end of the fountainhead. If we prevent oneend of the tube from plugging then water would not fill upthe space inside the tube. In order to fill up the space insidethe tube the gradation of cross sectional area has to be verygradual. But such a gradual gradation in area might affectthe number of jets and the kind of jets we would like for thedesign.

Another reason for the observed behavior of the water jetwas because unlike the schematic in Fig. 4 we do not havecolumns above the tube, but simple have holes. Columns helpto statically stabilize the water and eventually water particles

in the column would be at static equilibrium. However lackof a column makes it impossible for a static equilibrium tobe attained and difficult to predict the behavior of the waterjets.

1) Lessons learnt: The following are some lessons learntfrom this failed exercise:

• 3D printing is very good to realize complicated shapesthat might be required in making a fountain head.

• As water flows through a 3D printed tube, friction inthe tube due to stair-case effect can introduce losses.

• Shapes formed by jets of same thickness appear to bevisually more pleasing.

• Projecting water upwards gives rise to a lot of dynamicsin the system which are usually difficult to model.

• It is important to search for a physical phenomenonthat produces water jets approximating the theoreticalpredictions closely.

IV. FINAL DESIGN

From our previous experiments it was clear that as long asthe outlet has a cross sectional area greater than a creatingexperimentally obtained value, the flow is close to stream-lined, implying Bernoulli’s principle can be applied. Thuswe hunt for a physical phenomenon that uses Bernoulli’sprinciple and produces water jets of varying velocities. Aparticular application of Bernoulli’s principle is demonstratedby Torricelli’s theorem. It is a theorem in fluid dynamicsrelating the speed of fluid flowing out of an opening to theheight of fluid above the opening. Torricelli’s law states thatthe speed of efflux, v, of a fluid through a sharp-edged holeat the bottom of a tank filled to a depth h is the same as thespeed that a body (in this case a drop of water) would acquirein falling freely from a height h, i.e. v =

√2gh. Fig.6 shows

a schematic of a Torricelli’s column with a number of outletsat different heights. By changing the height and orientationof the outlets the shape of the water jets can be changed.From Bernoulli’s principle, we have:

Patm + ρgH = Patm + ρgh1 +1

2ρv21

⇒v1 =√2g(H − h1)

vx = v1 cos θ

vy = v1 sin θ

h1 = vyt+1

2gt2

⇒t = f(h1, vy)

sx = vxf(h1, vy)

Based on the calculations for range or the water jets at dif-ferent heights and for different orientations, we 3D printed aTorricelli’s column as shown in Fig. 7. We had to experimentwith the diameter of the holes till the water jets were as closeto streamlined flow as possible. Also we had to experimentwith the spacing between adjacent holes so that turbulencecause near one of the outlets does not affect the flow of waterthough the other. We observe that the water jets flowingthrough the outlets approximate the jets as expected from

Fig. 6. Schematic of a Torricelli’s column

Fig. 7. Prototype of a Torricelli’s column

theory very well. We also obtain the best diameter as well asspacing that produces water jets matching theory as closelyas possible. In the subsequent section we describe how ashape can be divided into parabolas that are representativeof the overall shape and how the position and orientation ofthe outlets can be obtained so that we obtain the water jetsfollowing a desired profile.

V. AUTOMATION PIPELINE

Given a shape, one needs to figure out, how many columnswould be needed to approximate the shape and where shouldthese column be placed within the shape. For given positionsof columns, the hole positions and angles on each columnthen need to be optimized to generate water jets whichapproximate the shape as closely as possible. This being abig design space, user input is taken to help the optimizationprocess. We currently limit ourselves to 2D shapes that canbe generated using single column. However, the pipelinecan be easily extended to 3D shapes. The user decidesthe position of column so as to maximize coverage ofshape area (volume in 3D). The number of holes and their

positions are fixed and pre-determined. This is done in orderto ensure sufficient spacing between the holes as this wasfound to be important, experimentally, for continuous andnon-intereferring water flow from holes. Our optimizationthen finds the best angles for these predefined holes so thatthe resulting water jets approximate the shape as closely aspossible.

Figure 8 describes the optimization pipeline in detail usingcircle as the target shape to be approximated with waterjets. The user inputs an image with the desired shape ofthe fountain. The boundary of the shape is extracted usingstandard image processing techniques such as edge detection.The user also decides the position of the Torricelli columnfrom which the water jets would originate. User can use theintuition about symmetry of the shape for column placement.In 2D, the column divides the shape into two parts. Holesgenerating water jets for each part are optimized one byone. Each part is further divided into overhanging and non-overhanging geometries (Fig. 8b). Overhanging geometriesare defined as those sections of the shape which cannot beapproximated by water jets that are falling down (such aslower circle). We 3D print these geometries as attachmentsto the main Torricelli column. For the non-overhanginggeometries, our optimizer tries to generate water jets whichapproximate their boundaries. The overhanging geometriesare found using ray-tracing algorithm. The overhanginggeometries are found using ray-tracing algorithm. The waythe overhangs are found can be described in a few steps asfollows:

• Voxelize the geometry and extract the boundary voxels• From every filled voxel, shoot a ray along the negative

Z direction• Count the number of boundary voxels that the ray passes

through• If the number of intersections is odd then the boundary

voxel is not an overhang otherwise it is considered anoverhang

• Once the overhanging voxels are obtained, segmentthem and then form CAD models for each of theoverhanging structure using a marching cube algorithm

In the next stage, the shape is pixelized and pixels lyinginside the shape (called body pixels), outside the shape andon the boundary of the shape (boundary pixels) are extracted(Fig. 8c). In the final stage, our optimizer optimizes the holeangles by using these pixels to evaluate the contribution ofout coming water jets in approximating the shape (Fig. 8d).

A. Cost Function

During the optimization, our cost function f evaluatesthe quality of resultant jets in terms of their contribution inapproximating the input shape. In order for the approximatedshape to be perceived, one needs to approximate its bound-aries as well as its area. In order to ensure that the water jetspass through the boundary as well as the area of the shape,we have two terms in our cost function: (a) boundary costterm and (b) body cost term (Eq. 2). The boundary cost termevaluates how well does a jet approximate the boundary of

Image of the desired shape

-6 -4 -2 0 2 4 60

1

2

3

4

5

6

7

8

9

10

Divide the shape into overhanging and non-overhanging geometry

Pixelize the shape and obtain inside, outside and boundary pixels

(a) (b) (c)

Optimize over angles of each hole so that the out coming jet contributes to the

input shape formation (d)

Predefined hole positions

User defined column position

x0 2 4 6 8 10

y

0

1

2

3

4

5

6

7

8

9

-6 -4 -2 0 2 4 60

1

2

3

4

5

6

7

8

9

10

+

-2 0 2 4 6 8

1

2

3

4

5

6

7

8

9

-6 -4 -2 0 2 4 60

1

2

3

4

5

6

7

8

9

10

Optimized result

3D printed overhang

body pixelsboundary pixels

3D printed column

water jets

Nonoverhanging geometry

Fig. 8. Our optimization pipeline (in 2D): (a) Input to the algorithm is a2D image of the desired fountain shape from the user. User also providescolumn position. (We approximate the shape on each side of the column,one by one.) (b) In the first stage, the shape is divided into overhangingand non-overhanging geometries using ray casting. For the non-overhanginggeometry, our goal is to approximate its boundary as closely as possible withwater jets while the overhanging geometry is generated by 3D printing (seethe 3D printed overhang) (c) The shape is then pixelized to obtain pixelsinside the shape, on the boundary of the shape and outside the shape (greenpixels are pixels inside the shape called body pixels and blue pixels are theones on the boundary) (d) Finally we optimize the angles of the holes atpredefined positions such that the resultant water jets approximate the shapeas closely as possible (see optimized result).

the shape while the body cost term evaluates the same forthe area of the shape. This is evaluated by using the numberof boundary and body pixels intersected by the water jetin consideration. Higher the number of boundary and bodypixels intersected by the water jet, higher is its contributionin approximating the input shape.

f1 = wboundaryNboundary −Xboundary

Nboundary︸ ︷︷ ︸boundary cost term

+

wbodyNbody −Xbody

Nbody︸ ︷︷ ︸body cost term

(2)

where Nboundary, Nbody are total number of boundaryand body pixels which need to be intersected respectively,Xboundary, Xbody are number of boundary and body pixelsintersected by the jet respectively and wboundary, wbody areweights on boundary and body cost terms respectively.wboundary and wbody are manually tuned to trade-off waterjets approximating boundary and body of the shape.

While the cost function in Eq. 2, encodes the shapeapproximation well, it doesn’t prevent the water jets fromgoing outside the shape boundaries as well as intersectingeach other. Both these effects need to be avoided in orderfor big fidelity shape approximation in reality. In order toaccount for these, we add two additional terms in our costfunction (Eq. 3). The outside cost term tries to bound thewater jet within maximum x and y co-ordinates of the shape

and the intersect cost term penalizes the jets that intersectother jets.

f2 = f1 + woutside(|xshapemax − xjetmax|+ |yshapemax − yjetmax|)︸ ︷︷ ︸outside cost term

+wintersectXintersect︸ ︷︷ ︸intersect cost term

(3)

where Xintersect is the number of pixels intersected bymore than one jet. xjetmax, yjetmax are the maximum x and y co-ordinates of the water jet (found using the projectile equationof the water jet) and xshapemax , yshapemax denotes the maximumx and y co-ordinates of the shape. woutside, wintersect areweights on outside and intersect cost terms respectively andare also manually tuned.

In Eq. 2, the intersection of water jet with any pixel inthe body of the shape is considered with equal weightage.However in reality, we would want to prioritize the pixelsclose to the boundary and would want the water jets tointersect them as compared to intersecting with pixels fartheraway from the boundary. In order to reflect this priority ofpixels, cost function f1 was updated as follows:

fwtd1 = wboundary

Nboundary −Xboundary

Nboundary︸ ︷︷ ︸boundary cost term

+

wbody

NbodyPwt −Xwtbody

NbodyPwt︸ ︷︷ ︸body cost term

(4)

where Pwt is the weight of the pixel based on its distancefrom the boundary. Pwt is higher for pixels closer to theboundary. Xwt

body denotes the sum of weighted pixels inter-sected by the water jet.

B. Optimization using CMA-ES

We use Covariance Matrix Adaptation-Evolution Strategy(CMA-ES) [6] to optimize hole angles using the cost functionf2 (Eq. 3) with fwtd

1 (Eq. 4). CMA-ES is a continuousderivative free optimization method which has gained pop-ularity in many fields including Graphics and Robotics.We choose this method because our cost function is notdifferentiable.

In order to optimize the hole angles, we make the follow-ing heuristic choice. Firstly, we decide to optimize for eachhole one at a time starting with the topmost hole (farthestfrom the bottom). This is done to ensure that the water jetfrom the topmost hole approximates the shape in a way thatallows maximum space for the jets below it to approximatethe remaining shape. This would help in distributing the jetswithout their mutual intersection. Secondly, for the overhang-ing geometries, we neglect the boundary pixels during theoptimization (Nboundary = 0). This is because the boundaryof the overhanging geometry would be 3D printed. Hence,we assume that the water jets should approximate only the

x0 2 4 6 8 10

y

0

1

2

3

4

5

6

7

8

9

x0246810

y

0

1

2

3

4

5

6

7

8

9

overhang

column

Fig. 9. Optimized approximation of a circle: The hole angles optimized byour method produced water jets denoted by colored projectiles. These jetsapproximated the boundary of the non overhanging geometry (upper circle)and remained within the circle area. For the overhanging geometry (lowercircle), the jets approximated the circle area. The intersection among jets isalso minimal.

shape area for the overhanging geometries. This implies thatthe boundary cost term automatically goes to zero for thesegeometries (Eq. 4). Further, because a physical barrier (3Dprinted overhang) is intercepting the water jets, these jets areautomatically bounded within the shape eliminating the needof the outside cost term in f2 (Eq. 3).

As we move from top hole to the bottom-most, optimizinghole angles one at a time, we keep an updated list ofboundary and body pixels (along with their weights) that areunintersected by the jets from the already optimized holes.This is done by updating Nboundary and Nbody in the costfunction fwtd

1 after optimizing each hole. This makes theoptimization to generate water jets that intersect as manydistinct pixels as possible.

C. Optimization Results

We used our optimization method for simple shapes withno overhangs such as a triangle (Fig. 14) as well as for shapeswith overhangs such as a circle (Fig. 9). We also tried ourmethod on some other shapes such as a hat and a rectangle(not shown). In all cases, the method produced reasonableapproximations of the target shapes using water jets.

VI. FOUNTAIN HEAD DESIGN

The design of the Fountain head is very simple: a columnwith a number of holes at different heights and orientations.However a few additional features need to be added to thedesign so that the fountain head functions as a fountain.Namely we require a tube to pass through the column carrywater from a reservoir at the bottom. The tube pours waterinto the column and the water jets get collect back inthe reservoir. Fig. 10 shows a schematic of the proposedfountain. The fountain head itself is simple in geometry andis parametrized by the number of holes and their placement(hi) as well as orientation (θi). Most of the other units in

Fig. 10. Schematic of the proposed fountain

Fig. 11. Channels for water bouncing off the overhangs to flow through

the fountain remain constant. The only other variable inthe design are the overhanging structures. From the CADmodel, overhangs are detected as shown in Sec. V and theobtained models of the overhangs are attached to the fountainhead as shown in the figure. An additional feature to notein the design of the fountain head is that of channels thatallow water bouncing off the overhangs to flow throughwithout affecting the rest of the jets. The channels are shownin Fig. 11. Even though we propose this design for thefountain head, for the sake of this project we have used amuch simpler design for the column as shown in Fig. 12.This is because using the Cube 3D printer, it is impossibleto fabricate a column which has complicated channels as

Fig. 12. Cut section view of the channels prototyped for this project

Fig. 13. Matlab GUI that was developed to optimize the hole positions andangles so as to produce water jets approximating a given shape (a trianglehere) manually.

proposed. However using a state of the art 3D printer suchas Objet, we are confident that we should be able to fabricatethe proposed design. We also hope to fabricate the fountainhead using an optically transparent material.

VII. RESULTS

In this project we aimed to 3D print fountain heads thatwould produce water jets that approximate a desired shape.To begin with we tried to design 2D fountains and thenextended that to make 3D fountains. We started with asimple geometry having no overhangs: triangle. Using aGUI developed in Matlab (Fig. 13), we manually foundthe best orientation for a number of water jets placed atdifferent heights on the column. The projectiles look asshown in Fig. 14(a). Based on this we designed a fountainhead and the resulting fountain very closely approximatedthe theoretical expectation as shown in Fig.15. Fig. 14(b)shows the trajectories of the water jets as obtained from theoptimization described in Sec. V. Note how the optimizationproduces results very close may be even better than manuallytuned trajectories and how the actual water jets int hefountain approximate the theory closely.

Following that we designed a more complicated 2D shape:a duck, which is asymmetric and has overhangs. The foun-

Fig. 14. Trajectories of jets that approximate a triangle. (a)shows trajec-tories obtained form optimization (b)shows manually tuned trajectories

Fig. 15. Fountain with water jets approximating the shape of a triangle

Fig. 16. (a) Fountain head (b) Fountain with water jets approximating theshape of a duck

tainhead and the resulting fountain as shown in Fig.16. Basedon the success with 2D shapes with overhangs, we extendthe idea to a simple 3D shape with overhangs: heart/floweras shown in Fig. 17

VIII. FUTURE WORK

In this project we managed to generate designs for aparametrized fountain head that produces water jets assuminga 2D shape that could be asymmetric as well as have over-hanging geometry. The framework also produces fountainheads for simple 3D geometry with overhangs. The futureextensions of this work can be divided into two categories:

• Design: In terms of design and fabrication of thefountain head, a higher end 3D printer can be used torealize the proposed design. The fountain head couldpotentially be printed using a transparent material. Theparametrized CAD model can be coded up in the opensource software OpenSCAD so that the output of theoptimization can directly go in as an input for the CADscript and we automatically obtain a CAD model of thefountain head.

• Optimization: The framework can be extended to 3Dby considering voxels instead of pixels. We couldoptimize for hole positions along with hole anglessimultaneously. Work could be done to validate heuristicchoices in the current optimization pipeline. We couldpotentially take in as an input the specifications of thepump that the user has and accordingly scale the designso that the required pressure head and flow rate for thefountain is met by the pump used.

Fig. 17. (a) Fountain head (b) Fountain with water jets approximating theshape of a heart/flower

IX. APPENDIX

Here are links to videos demonstrating our prototypedfountains in action.

• Heart: https://www.youtube.com/watch?v=9rmbRN029e8

• Duck: https://www.youtube.com/watch?v=s4gPyIxHUZY

• Triangle: https://www.youtube.com/watch?v=90FEIPx8xBA

Torricelli column experiments that helped us in decidinghole sizes and spacing can be seen in the following videos.

• Torricelli with crowded holes: https://www.youtube.com/watch?v=MMcwBGIyRfI

• Torricelli with valid hole spacing: https://www.youtube.com/watch?v=AZTD511lQjI

Other experiments with the Venturi fountainhead andcones are documented below.

• Venturi design: https://www.youtube.com/watch?v=ZpKbf5eUMCI

• Cone with big hole: https://www.youtube.com/watch?v=bui5Vy6pvpU

• Cone with small hole: https://www.youtube.com/watch?v=_N5HivWrZTw

REFERENCES

[1] “Fountains and Water Features: From Ancient Springs to ModernMarvels”, Rosalind Hopwood, Publisher Frances Lincoln, 2009.

[2] Min-Joon Yoo and In-Kwon Lee, “Creating musical fountain shows”,IEEE Computer Graphics and Applications, Volume 29 Issue 5,September/October 2009, Pages 6-13.

[3] Alejandro Bahamon, “Landscape Architecture: Water Features”, Rock-port Publishers, 2007.

[4] N. Srinarayana, S. W. Armfield and W. X. Lin, “Numerical Simulationof Free-fountains in a Homogeneous Fluid”, 16th Australasian FluidMechanics Conference, 2007.

[5] Steven Schain, “Integrating Water Elements and Fountains into Archi-tectural Renderings Using Particle Flow”, Autodesk University, 2012.

[6] N. Hansen, “The cma evolution strategy: A comparing review,?Towards a New Evolutionary Computation. Advances on Estimationof Distribution Algorithms. Springer, 2006.