SPH - Particles (Elastics)

With this type, RealFlow establishes invisible connections between the particles. These links act like springs and produce an elastic behaviour. The stiffness of the springs can be adjusted to make the fluid softer or more rigid. For that reason, elastic fluids are suited for a wide variety of applications, for example different kinds of candy, toothpaste or extremely viscous substances. The springs prevent the particles from flowing apart and keep the fluid together.

 


Type

This submenu allows you to define the fluid’s behaviour. By default, RealFlow generates fluid particles used for all kind of liquids. Fluid particles can interact with other fluid particles and support self-collision. They are affected by any of RealFlow’s internal or imported objects, including RealWave surfaces.

Gas” is used to create substances like air. Gas particles tend to very strong expansion and high velocities. RealFlow gases are not grid-based and therefore behave completely different from other solvers.

Liquid” is RealFlow’s standard setting and provides parameters for all watery or high-viscous substances. It is surely the most often used type and is suitable for all kinds of particle-object interactions, but especially for small to mid-range simulations. For larger projects, you should consider using the new grid-based fluid solver "Hybrido".

Dumb” particles are perfectly suited for fast calculations of secondary effects, like spray or foam. Please keep in mind that these particles cannot react with each other and will not be affected by other emitters.

Elastics” establishes a so-called spring-mass system between the particles, making them behave like a soft body. This option can be used for interesting effects like jelly-like fluids or expanding and contracting substances. Please note that elastic particles are not ruled by RealFlow’s soft body solver – that is a completely different system and can only be used with objects.

Script” gives you the opportunity to write your own fluid behaviour with Python scripting or C++. Choosing this type adds an “Edit” button to the menu. Clicking on “Edit” opens a new scripting window with a predefined function that is used to enter your source code. By default, this window does not contain any executable code.

Resolution

With this setting you can increase or decrease the amount of particles, and therefore it is one of the most important parameters. “Resolution” especially depends on scene scale and emitter scale, but it also affects the fluid’s mass and therefore depends on “Density”, too. By default, resolution is 1.0. A volume of 1 x 1 x 1 units filled with 1,000 particles has a mass of exactly 1,000 kg. In other words: Each particle has a mass of exactly 1.0 kg. By raising “Resolution”, an individual particle’s mass will be lowered and vice versa. You can monitor the relationship between mass and density under

Statistics > Particle mass

Dependent on your scene, “Resolution” can dramatically increase, and values of 1,000 or even much higher are sometimes necessary. Another interesting issue – especially for scripting and plugin development – is the relation between “Resolution” and a particle’s radius, ruled by this formula:

radius = 1.0 / (1000.0 · Resolution1/3)

Density

Density” is defined as mass per volume unit and is expressed in kilograms per cubic metre [kg/m3]. Water, for example, has a density of 1,000 kg/m3. “Density” is different for each substance and for some fluids, like crude oil or honey, there are only average values available, because they consist of variable amounts of ingredients.

Spring

RealFlow creates virtual springs between the particles to achieve elasticity. The stiffness or softness of these springs is controlled with this parameter. Higher stiffness creates a behaviour that becomes increasingly similar to rigid bodies. Though many terms may remind you on object dynamics, they actually have nothing (or very little) in common, because rigid and soft body dynamics solver work completely differently.

Damping

It is always recommended to add some damping to the virtual springs between the particles to avoid vibrations or exaggerated results. Very low damping can affect the stability of the spring system, while high settings are able to slow down the motion significantly.

Elastic limit

This value is very technical and not easy to explain. It restricts the elastic behaviour of the elastic springs between the particles and is measured in percentage of the initial spring length (= 100%). A value of 120 means that the spring will lose its elasticity when it is stretched to 120% of its initial length. At this point the spring becomes rigid.

Break limit

This value is related to a spring’s initial length. The spring connection between particles will break if the spring’s elongation reaches the adjusted value, also measured in percent.

Max Particles

The pre-adjusted default value is also the maximum value, but it can be changed any time, if you need less. Under “Statistics” you can see two entries counting particles: "Existing Particles" and "Emitted Particles". Max Particles” is connected to the latter value, and if you want to stop the emitter to create more particles you can enter a smaller value. Please note that "Max particles" is based on the total amount of emitted particles. Let's say you have entered "500,000", so even if you currently have only 1,000 particles in your scene, but have already deleted 499,000 particles, RealFlow will stop creating new particles.