http:^^www.tc.cornell.edu^visualization^education^cs718^fall1995^mccune^final^report.html

来自「This data set contains WWW-pages collect」· HTML 代码 · 共 371 行 · 第 1/2 页

HTML
371
字号
particles' states will not have any specific particle with which to interact.Therefore, some means of communicating the change of state is necessary. For example, consider a water particle moving into a bin full of fire-particles.With all the surrounding fire particles, the water particle(s) shouldtransform to steam.  But the fire particles should have their temperaturesaltered as well, or should have some proportion of fire particles die toaccount for the energy exchanged.<P>The bins therefore must be utilized to pass messages to particles that shoulddie or undergo a loss in energy.  One set of particles is choosen to performthe transition and issue the appropriate message, the other is choosen to listen for the message and take the appropriate action.  In the fire andwater example, the water is the one which performs the tansition to steamand passes the message, while the fire particles are the system that reactsto the passed messages. <P>One possible means of message passing and the one utilized in this researchis to use the number of particles per bin as the means of message passing.Temperature of given particles and motion vectors can be calculated basedon these figures.  To differentiate water from fire, water is given a negative count.  Where it is obvious that two types of particles are present in a certain bin, it is assumed that fire extinguishes water witha certain ratio of fire particles to water particles.  If the water particlestransform, they decrement the number of particle bins by the number offire particles extinguished.  Before the fire-particles move again theynote the change and that percentage of particles will on average die. <P>For example, take particle X.  It moves into a bin and after all other<I>fire</I> particles have moved it notes that there are 15 particlesincluding itself in the bin.  During the <I>water</I> movement portion of the frame,3 water particles move into the same bin and are considered to exchange heatand vaporize with the fire particles.  Say that it takes two fire particlesto vaporize one water particle, then 6 fire particles are extinguished, while3 new steam particles are created.  The final bin count is 9-- steam is countedas a neutral particle.  The final position of all particles in the frameis output and processing for the next frame begins.  Each fire-particle issearched for those particles that should have died.  When particle X isreached (or any of the fire particles in the bin) it notes that there arenow 9 particles in the bin when their used to be 15.  Thus, 6 out of the 15particles must have died.  The particle picks a random number between 0 and 1and if it's number is less than 6/15ths, it's number is up and the particle "dies."<P>It can happen the opposite way as well, that a fire-particle moves into a binpopulated by water particles and should extinguish itself as well.  The waterparticles also need to know their state after all water particles have moved,so that they will also be killed off in the appropriate situtation.<P>A byproduct of the fact that probabilities are used to kill of particles, isthat the bin counts are accurate only on the average.  As time passes however,local error and changes in the system based on the error could accumulate.Therefore it is necessary to recount the number of particles of any type atthe end of each movement phase.  This in some ways doubles the time requiredto animate any interacting particle system, but is still linear in time andbetter than N squared.Thus, the steps required to interact 2 particle systems with message passingcan be generalized as follows:<UL><LI>	Remove "dead" particles of type 1 from the particle system<LI>	Move the type 1 particles<LI>	After all type 1 particles have moved, each type 1 particle notes final state<LI>	Remove "dead" particles of type 2 from the particle system<LI>    Move the type 2 particles<LI>	After all type 2 particles have moved, each type 2 particle notes final state</UL><H3> 4.0 Results </H3>	Though the above presented method solves many problems, there area few that are more difficult to side-step.  In particular, conservation ofmomentum is difficult to maintain- simulating a collision is easily done using a probabilistic method and in closely approximating reality  shouldbe done through every bin which the particle moves.  However, when a collisionoccurs the only particle that can be affected (unless message passing isagain used) is the source particle.  <P>	This problem encountered during the research can either be side-steppedby ignoring interim bins completely (as is done in this research) or perhapscan have a damping factor applied proportionate to the number of collisionsthat might have occurred.  	Another difficulty is that there are even more parameters that mustbe tweaked into place to produce an image that approximates the reality anddoesn't approximate some alterante reality-- where flames progress upwardsin very defined bands for instance. <P>	An implementation of an interdependent fire system was investigatedand can be seen by the results below.  The fire particle system image was originally created with a 200,000 particle-system. attempted to use 150,000 particles in the provided MPEG.The particles are created during frames 1-30 andafter that are created from the particles that have already died. The image was rendered using <!WA1><!WA1><!WA1><!WA1><a href="http://www.tc.cornell.edu/Visualization/tools/dx.html"> DX </A> with a color map and an opacity map. The animation took approximately11 minutes to create running on a RISC 6000 processor with 128 MB of memory. However, it has been noticed that due to the binlimitations many of the particles go unused and essentially only slightlymore than 50,000 particles are being used.  Using only 50,000 particles (due to the current initialization sequence of the program) a slightlyless full animation is produced, but is comparable to the original andonly takes 5.4 minutes to create.  <P>In the provided animation,a particle's temperature is based on the number of particleswithin the same region of space, while it's motion vector is determinedbased upon the density of particles immediately within its own space aswell as those bins that immediately neighbor the space.  A damping factoris applied to the motion in the plane that produces a circular cross-sectionwhen no particles are collided, whereas in the vertical direction changesin motion are based on temperature.  Overall, there are 21 parameters includingbin sizes that may be modified. It is also important to note, that if the bin size is selected to be too large, visible artifacts willbe generated.<CENTER><!WA2><!WA2><!WA2><!WA2><A HREF="http://www.tc.cornell.edu/Visualization/Education/cs718/fall1995/mccune/final/Images/FlamePic0.jpg"> <!WA3><!WA3><!WA3><!WA3><IMG ALIGN=CENTER  SRC="http://www.tc.cornell.edu/Visualization/Education/cs718/fall1995/mccune/final/Images/FlamePic0.jpg">   </A></CENTER> <P>The animation is also present as an <!WA4><!WA4><!WA4><!WA4><A HREF="http://www.tc.cornell.edu/Visualization/Education/cs718/fall1995/mccune/final/flame.mpg"> MPEG. </A> <P>There are some artifacts present in the animation of the flame that I amnot quite yet sure why they are there.  In the first frame of the animationprovided, a top view is provided.  It is possible to see from this top viewa criss-cross pattern that is an obvious artifact from using the bins and/orsome combination of the motion mechanism, although I am unsure as to whythis is the case.  Also, the flame tends to pulse from one frame to the nextwhich is something that would preferably not occur- I am unsurewhat is causing the oscillatory motion. <P>There is another benefit to using bins with an interdependent particle systems,parallelization.  As opposed to passing particles and all their associated information across bin boundaries, only the information contained by thebins need be passed.  This can save (given the amount of information eachparticle must pass as well as the fact that there can be a good numberof particles per bin) up to more than 100 times the amount of message passingthat needs to be done.  Thus, it should be possible to parallelize theapplication. <P>One other effect should be noted.  In independent particle systems, groupsof particle systems can be lessened or local processing abandoned altogetheronce sufficient information for a given area of the output area has been determined(e.g. there is no reason to use a thousand particles to represent a sectionof the screen only 10 pixels by 10 pixels wide).  In an interdependent particlesystems, this is not the case.  The entire process of the particle system isdependent upon the presence and number of its nearest neighbors-- stoppingpart of the particle system will eventually translate its effects to neighboringparts of the particle system that are still moving, with <I>unknown</I> consequences.Thus, some of the optimizations that are possible for independent systems,are <I>not necessarily</I> possible with interdependent particle systems.  <H3> 5.0 Conclusions	</H3>	This work has demonstrated that an interdependent particle system approach is feasible and that it is possible to use some of the attributesof the particle system itself to model "fuzzy" objects.  A model has beenproposed to allow the interaction of two particle systems and could possiblybe extended to more.  Many aspects of this work remain unexplored. Future work will finish the investigation of the proposed modelto interact two particle systems to result in a third.   <P>	There are many aspects of interdependent particle systems where	research could still be done.  For instance, investigating the interactions used on independent systems to achieve theflickering of a flame by adding spirals or clustering particles.  Or tryingto simulate these effects by adding an air particle system tothe field to simulate the convection of air.  Startingconfigurations that change over time and are not based on some random distribution of some preset starting configuration, but perhaps based onpreset data volumes.   It would also be interesting to see the resultsof a wall of fire, or some other configuration of flames modeled on aparallel processor.<H3> 6.0 References </H3><P>	"Particle Systems-- A Technique for Modeling a Class of Fuzzy Objects",	William T. Reeves, ACM Transactions on Graphics, Vol 2, No 2, pp 91-108<P>	"Particle Animation and Rendering Using Data Parallel Computation",	Karl Sims, Computer Graphics, Vol 24, No 4, pp 405-413</body></HTML>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?