NetLogo banner

Home
Download
Help
Resources
Extensions
FAQ
NetLogo Publications
Contact Us
Donate

Models:
Library
Community
Modeling Commons

Beginners Interactive NetLogo Dictionary (BIND)
NetLogo Dictionary

User Manuals:
Web
Printable
Chinese
Czech
Farsi / Persian
Japanese
Spanish

  Donate

NetLogo User Community Models

(back to the NetLogo User Community Models)

[screen shot]

Download
If clicking does not initiate a download, try right clicking or control clicking and choosing "Save" or "Download".(The run link is disabled for this model because it was made in a version prior to NetLogo 6.0, which NetLogo Web requires.)

WHAT IS IT?

This is a simple simulation of falling particles.

HOW IT WORKS

Particles fall, pile-up, and flow over each other and obstacles, according to a collection of simple rules

HOW TO USE IT

Click Setup.
This sets of the field and draws some default obstacles
Click Go.
This starts particles falling.
If active-mouse? is on, you can draw particles or obstacles
If draw-mode? is on, then the mouse will add and erase obstacles,
otherwise, the mouse will add particles.
The fat-pen? switch causes the mouse to draw or erase a larger block of obstacles at once.

If fill? is on, new particles are created at the top.
If drain? in on, particles are removed from the bottom.

The sliders fill-rate and drain-rate control how quickly particles are added and removed.

THINGS TO TRY

Draw in various configurations of obstacles.
Draw an hourglass.
Draw a cascade fountain.
Draw a waterfall
Draw conduits and pipes.

EXTENDING THE MODEL

Add pressure
~~~~~~~~~~~~
There is no sense of "pressure" on the particles, so particles will not flow horizontally (except in certain cases, like along one-unit-high channels) or up-hill, like water.

So, add "pressure" : a force that can cause particles to move because of the state of particles that may be quite far away.

Add acceleration
~~~~~~~~~~~~~~~~
Falling objects accelerate as they fall. That is, they gain speed. In this model, the particles fall at a steady speed. Change the model so that the particles speed up as they fall. Careful! You need to make sure the particles don't skip past the obstacles, other particles, or the "ground"!

Add "bounce"
~~~~~~~~~~~~
Particles like sand and ball-bearings don't usually just fall, land, and sit there. They often bounce when they land. In this model, particles do not bounce. Should particles landing on "sloped" surfaces bounce at a particular angle? Would it be just as well for to bounce at a random angle? How much realism is "enough"?

Implement the obstacles as turtles
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The obstacles are patches. What if they were turtles? How could the model's code be optimized? Would it be faster or slower? What would that let you do?

Implement anti-particles
~~~~~~~~~~~~~~~~~~~~~~~~
What if there was another breed of particles that followed the same rules, but in reverse? That is, they fall *up*. How would the two kinds of particles interact? What if two particles (the particle and an anti-particle) wanted to occupy each-other's spots? Can they swap places? How would that change things?

Make a game
~~~~~~~~~~~
You can use this model as the basis for a game, like a Pachinko machine, or a game where the player must insert (or remove) obstacles to direct the particles into a goal. There may be un-removable obstacles, or un-fillable space that the player must work around. Perhaps a suite of special obstacles that add, destroy, move, or re-direct particles could be involved. Another game may involve the interaction of particles and anti-particles.

COPYRIGHT

This work is copyright (c) 2004 James P. Steiner. It is licensed for use under a Creative Commons 2.0 Attribution, Non-commercial, Share-alike license.

(back to the NetLogo User Community Models)