Charged Particles Inside Mesh Acculate At Vertices?!

If 1000 charged particles are emitted in a burst inside a mesh sphere, they nicely expand in the vacuum of space until they start bounding around inside against the mesh walls, with some small gravity influence too to just to help me see that forces are really working at all, and some damping to stop all the bouncing around forever, they settle to the lower half of the sphere, but they do two things wrong:

(1) They fail to stay suspended mostly in space, after many of them start to accumulate on the walls, enough that they would then start to lift and repel the rest of the particles away from the surface.

(2) They bunch up, impossibly, at all the vertices of the mesh, as if within a vertex they don’t repel one another, and this may explain (1) too, since vertices can contain so many particles.

Real electric charges would never accumulate at the same vertex points, on top of each other. I’m using standard power 2 meaning 1/r^2 falloff, just like real electrons.

I tried assigning charge to the sphere mesh too, but the effect was confusing, just forcing the same result higher up on the sphere.


TEMP8.blend (1.65 MB)

I’m currently trying to test other software for the same simple system of mutually repulsing point charges as a springy and more uniform alternative to often locked up uneven hard sphere packing, wondering which one I can both decipher as a causal user and which behaves like real physics without accumulating only at vertices or having other artifacts.

Modo 901 so far treats a mesh ball as a solid so particles created inside count as intersecting and jump to the outside immediately like quantum tunneling, so I’ll try a simpler system of an open top cylinder.

Many node-based packages are deeply complicated with terrible manuals that fail to explain normal user workflow.

Using the Size Deflect feature in the Physics section of the particle emitter, does raise them off the floor but with the exact same odd effect just offset from the actual mesh surface:

The clustering at vertices may be simply an artifact of the mesh shape, so those positions merely represent the actual furthest the particles can get from one another. That indicates that just the physics engine is unrealistic, in that particles are perhaps only responding to an overall field strength of the whole population rather than even being aware that they are very near another particle, even right on top of each other. That’s also perhaps why they expand all the way to the surface in the first place even when many of them first start collecting there, since they only experience the diffuse overall field rather than a real calculation of their relation to each immediate neighbor.

Is there any real physics of repelling charges in Blender that won’t let particles touch each other? It’s simple enough if they are used to merely make emitted particles spread out from each other, but once contained or constrained in space, can they act real?