A particle sorter with linearly increasing gaps

preview_player
Показать описание
The particle sorter in this simulation is inspired by a comment to a previous video. Instead of using several sieves one above the other, it uses a single sieve, with rotating obstacles of decreasing radius and increasing gaps between them.The obstacles rotate and exert a tangential force on the particles, in order to decrease clogging of the sieves. The angular speed of the obstacles varies periodically in time, in order to reduce the chance of particles getting stuck. In addition, the obstacles have a circular motion of small amplitude, which reduces the chances of particles getting stuck even more.
The conveyor belt effect results from the segments forming the belt exerting a tangential force on the polygons, in addition to the normal force. The tangential force is proportional to the difference between the tangential speed of the polygon and the speed of the belt.
To compute the force and torque of polygon j on polygon i, the code computes the distance of each vertex of polygon j to the faces of polygon i. If this distance is smaller than a threshold, the force increases linearly with a large spring constant. In addition, radial forces between the vertices of the polygons have been added, whenever a vertex of polygon j is not on a perpendicular to a face of polygon i. This is important, because otherwise triangles can approach each other from the vertices, and when one vertex moves sideways, it is suddenly strongly accelerated, causing numerical instability. A weak Lennard-Jones interaction between polygons has been added, as it seems to increase numerical stability.
Unlike in some previous videos involving interacting polygons, there is no thermostat in this simulation. Instead, friction forces (both linear and angular) have been added for numerical stability. In addition, the particles are subject to a gravitational force directed downwards.
The color of the polygons depends on their size.
To save on computation time, particles are placed into a "hash grid", each cell of which contains between 3 and 10 particles. Then only the influence of other particles in the same or neighboring cells is taken into account for each particle.

Render time: 1 hour 9 minutes
Compression: crf 23
Color scheme: Turbo, by Anton Mikhailov

Current version of the C code used to make these animations:
Some outreach articles on mathematics:
(in French, some with a Spanish translation)

#molecular_dynamics #polygons #conveyor
Рекомендации по теме
Комментарии
Автор

I notice that there seems to be more clogging on the right end, with the pentagons “neatly” sitting in the too-small space with the rollers against two faces. What if instead the rollers were of uniform radius (i.e. the gap size changes were made solely by adjusting the spacing between rollers)? That feels like it should have an effect.

kevinpreid
Автор

Not sure why this was on my recommended videos but I enjoyed the entire thing.

benturner
Автор

This is the least efficient way to sort my files

ApertureAce
Автор

I love the ones standing on the posts.

Nethershaw
Автор

It didn't work out as well as I thought but I also wasn't thinking of it exactly like that. I guess I had in mind something more like a packaging system.

If you feel like it you could try the following ideas:

Have two lines with different slopes. Basically the conveyor belt is actually a sifter both coming from the left(or right). This allows the objects to move along the "conveyor" but also being sifted at the same time. In some sense the conveyor isn't necessary. It's just moving the objects to the start of the sifter. If you had two with different slopes(say one that is almost flat) it would increase the probability.

Also, if the gaping isn't linear itself per gap but the same for each bin(the max size of what is to be sifted) then I think one has a higher chance of filtering(but the issue is larger objects getting stuck clogging them up). That is, the gaps are something like 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 rather than 1 2 3 4 5 6 7 type of thing. The issue here is that the smaller gaps are not that effective at the start of a bin because they typically are clogged. This makes only the later gaps effective. This may not actually solve the issue in the long run though. (some anti-clogging mechanism is needed)

Putting barriers above the sifter at the size change will help(this will prevent some of the smaller ones from passing.

Zig zag shape(slow changes a bit per e.g., like -.3 then -.1 then -.3 then -0.1 or whatever) but the changes are offset in the middle. This causes a slight "build up" in the center of the bins.

Move the entire sieve in a circular counterclockwise gyrating motion. This could just be a back and forth oscillation.

Rather than circular rollers something like stars would be better

Between the gaps have a static pin(this means the gaps have to be 2 x larger). This might make the objects less likely to churn between two rollers. The pins can move up and down which can help them eject larger objects that get stuck.

All these methods just increase the probabilities but likely won't eliminate the issue. The issue is likely going to exist in all "linear" sieves so it is just probability based(adding more and more tweaks to reduce the probability of incorrectly filtering)

MDNQ-udty
Автор

Is there a specific reason why you chose pentagons?

DestroManiak
Автор

Seems like it might be worth shifting the bins a little so the dividers aren't directly below any gaps

Qaos
Автор

Something more interesting might be to use something like a centrifugal sieve. Concentric circles where the inner circle has the largest gaps and retains the largest objects while all the smaller get sent to the next outer sieve. Just repeat. At the end one should be left with optimal sorting.

You could do 4 versions(in the same video)(with exact same object inputs): 1. with all circular sifters going in the same direction. 2. alternating directions. 3. like 1 but they move faster. 4. and one with "without gravity" but with radial acceleration(so like a upright washing machine on the spin cycle(a washing machine inside washing machine inside a washing machine ;)). So this looks at if orientation matters and if they are flung outward(which predicates something is flinging them which could be an inner prop).

Then one can see what these differences make on how fast they sort. The reason being is that this design is an optimal sort "in the long run"(because it is closed no objects can escape it's sieve(unless it is deformed)). Since it depends only on time this means that finding the system that is fastest is the fastest("best").

MDNQ-udty
Автор

I bet lower slope but a bit of jostling would lead to a lower error rate. The perfect amount of jostle could be tuned variationally

eqwerewrqwerqre
Автор

Will the shapes all be correctly sorted with no small shapes getting pushed to a further bucket?

Hambrack
Автор

Interesting how shapes that could be in two bins end up sitting on the barriers. Maybe change the alignment of the openings slightly so that no opening is directly above a barrier?

idoben-yair
welcome to shbcf.ru