iPhone fluid simulation
Asked Answered
Y

3

8

Somebody know fluid engine for iphone?I need water and gases simulation.

Yoong answered 23/11, 2009 at 17:36 Comment(0)
I
13

Simulating fluids is a tremendous challenge for modern desktop computers, so I would not expect the greatest performance when trying to get this working on a mobile device. Running full Navier-Stokes calculations on the iPhone is probably going to chug pretty badly.

However, in the past I was able to perform 2-D fluid modeling simulations on limited hardware using lattice gas automata. With lattice gas automata, you approximate a fluid as a fine hexagonal grid, where particles can travel in one of six directions and obey specific collision rules. There are some limitations to this approach (addressed by the Lattice Boltzmann Method), but it can do a very good job of simulating fluids, even including compressible ones like air. Why this works well on limited hardware is that these calculations can be done using bitwise operators and simple lookup tables, without the need for any floating point calculations. You might be able to make something like this work on the iPhone's processor. For more on this technique, you can consult Appendix A of my Ph.D. dissertation, where I explain the process and have source code for a fluid modeler I wrote.

That said, if all you want to do is mimic the appearance of water in your application, the answers to the following questions provide some good suggestions:

Ingratiate answered 23/11, 2009 at 18:35 Comment(5)
Autodesk Fluid is a free high-performance fluid simulation on the app store. I don't know how they did it but it's clearly possible.Armenta
My guess it's just Jos Stam's stable fluids algorithm for gas simulation. It's reasonably quick for low resolution 2D grids. dgp.toronto.edu/people/stam/reality/Research/pdf/GDC03.pdfDormeuse
The iPhone hardware really isn't that limited. It has hardware floating-point (2 flops/cycle) and a reasonably fast bus to service it. It's slower than high-end desktop hardware, but easily capable of small-scale simulations on a modest grid.Gallstone
+1 It's very difficult to transcribe your code from a PDF file, did you post the code on a public repository, or have a zip file.Tonguelash
@Tonguelash - Had to dig for a bit, but this is the source used in that appendix: sunsetlakesoftware.com/sites/default/files/LatticeGasSource.zip . It's not a full project, and good luck getting it to compile on a modern system, but it should be easier to look that that than a PDF. I was working on modernizing this and placing it within a shader in GPUImage, but never finished. I should come back to that.Ingratiate
S
6

I have just released an iPhone fluid simulator that uses a compressible particle in cell method. I have a video here: http://www.youtube.com/watch?v=-CCeeh8EzuA

An incompressible fluid simulator requires many iterations, so I use a compressible simulator. The good thing is if you can make a compressible simulator stable enough, it usually looks incompressible enough.

My app is called GFlow on the app store if you want to see it in action.

Stilly answered 16/5, 2010 at 23:30 Comment(0)
O
4

I have release two iPhone apps. One app solves the Navier Stokes equations:

http://itunes.apple.com/us/app/fluid-dynamics/id382274493?mt=8

and the other one uses a compressible particle in cell method:

http://itunes.apple.com/us/app/liquid-dynamics/id417814216?mt=8&ls=1

A description of the methods used is founde here:

http://www.infi.nl/blog/view/id/71/Navier_Stokes_iPhone_vs_iPad

and here:

http://www.infi.nl/blog/view/id/98/Liquid_on_iPhone_and_iPad

Optic answered 10/2, 2011 at 15:29 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.