Strona głównaArtykułyZrównoważone rosnące Voronoiego

Zrównoważone rosnące Voronoiego: Jak kryształy wzmacniają powierzchnie płaszczyzny podczas formowania się

Semeny rozszerzające się w dół z równe prędkości tracą proste granice Voronoiego; semeny, które nuklatoryzują w czasie, tracą krzywe granice Johnsona-Mehla — obie podległe równaniu Avramiego dla uformowanej części.

mysimulator teamZaktualizowano — czerwiec 2026≈ 7 min czytania▶ Otwórz symulację

Siatki, które rosną aż do spotkania

Rozrzucamy kilka punktów ziaren na płaszczyźnie i pozwalamy im rosnąć w każdym kierunku z taką samą stałą prędkością. Granice, gdzie fronty wzrostu sąsiadujących siatki natrafiają na siebie, tworzą mosaik zawirowanych komórek — diagram Voronoi. Jest to jedna z najprostszych generatywnych procesów w geometrii, a prawie dokładnie tak samo formują się rzeczywiste krystale podczas twardzenia metali lub minerałów z ciekłego stanu.

demo na żywo · powiązana symulacja● LIVE

Matematyka pojedynczej komórki

Każda komora Voronoi to zbiór wszystkich punktów bliższych do swojego własnego seed niż do dowolnego innego seed. Korzystając z standardowej odległości Euklidesowej, granica między dwoma seedami jest prostopadłą bisektrzyną linię łączącej je, więc równoczesne, jednolicie szybkie rozrost z ustalonego zestawu seedów tworzy proste ściany komórek i diagram identyczny z matematycznym tessellationem Voronoi:

cell(i) = { x : dist(x, seed_i) <= dist(x, seed_j) dla wszystkich j != i } Zamiana funkcji odległości całkowicie zmienia charakter mosaiku, nawet jeśli seedy i zasada rozrośnięcia pozostają takie same. Odległość Euklidesowa daje proste bisektrzyny oraz znajome wielokąty wypukłe. Odległość Manhattan (taxicab, |dx| + |dy|) daje ściany komórek pod kątem 45 stopni, tworząc komórki podobne do dzwoneczków. Odległość Chebyshev (max(|dx|, |dy|)) daje komórki z kwadratowymi krawędziami. Wszystkie trzy to taka sama algorytmia, różniąc się jednymHDR linijką.

cell(i) = { x : dist(x, seed_i) <= dist(x, seed_j)  for all j != i }

Czas nukleacji: proste przycięcia w porównaniu z zakrzywionymi

Rzeczywiste krystalizacje rzadko nukl.capitalize(

, True) wszystkie swoje ziarna jednocześnie, a różnica w tym czasie dokładnie oddziela diagram Voronoiego prosty od jego bardziej ogólnej wersji, Johnsona-Mehla. Jeśli każde ziarno pojawia się na momencie zera i rosnie przy tej samej szybkości, granica między dwiema komórkami jest wyznaczona jedynie przez geometrię i pozostaje linią prostą. Jeśli natomiast ziarna nukl.capitalize(

, True) po kolei w czasie, ziarno wcześniejsze ma przewagę — jego przedzielnicę już zaszerzoło przed even istnieje sąsiadujące ziarno opóźnione — więc granica między nimi już nie jest równo odległa w przestrzeni; jest równo odległa w czasie przybycia, co daje zakrzywioną, podobną do hiperboli granicę skierowaną ku wcześniejszemu, niedogodnemu ziarnu.

Równanie Avramiego: jak szybko cała płaszczyzna wypełnia się

Metallurgi studiujacy fazy przemiany — solidifikację metali, kristalizację polimerów — potrzebowali sposobu na prognozowanie, co część materiału uległa tej zmianie do chwili t, a nie tylko końcowej geometrii. Johnson, Mehl, Avrami i Kolmogorow niezależnie odkryli ten sam wynik w latach 30. i 40., teraz nazywany równaniem JMAK lub Avramiego:

X(t) = 1 - exp( -K . t^n ) X(t) = ułamek płaszczyzny/volumenu przemienionego do chwili t K = stała szybkości (szybkość nukleacji razy szybkość rozrostu, połączona) n = wykładnik Avramiego — koduje tryb nukleacji i wymierność Wykładnik n jest liczbą interesującą: dla rozrostu w d wymiarach z stałą, ciągłą nukleacją, n = d + 1 (więc n = 4 dla normalnej solidifikacji trójwymiarowej z kontynuowaną nukleacją); dla saturacji miejsc, gdzie wszystkie nukleacje pojawiają się naraz i rosną tylko potem, n = d dokładnie (n = 3 w trzech wymiarach, n = 2 dla płaszczyzny dwuwymiarowej). Odczytywanie n i K z rzeczywistych danych o ułamku przemiany w zależności od czasu jest standardowym sposobem na diagnozę mechanizmu nukleacji, który faktycznie nastąpił, w pełni na podstawie jednej krzywej.

X(t) = 1 - exp( -K . t^n )

X(t) = fraction of the plane/volume transformed by time t
K    = a rate constant (nucleation rate x growth rate, combined)
n    = the Avrami exponent — encodes nucleation mode and dimensionality

Relaksacja Lloyd'a: sprawdzenie równomierności mosaiki

Diagram Voronoi z siedzeniami rozłożonymi przypadkowo ma tendencję do mieć niektóre bardzo małe, napięte komórki obok dużych, rozwijających się komórek — widocznie szumowe. Algorytm Lloyd'a upraszcza to za pomocą prostej zasady iteracyjnej: oblicz bieżący diagram Voronoi, przesuń każdy siedzibę do środka masy (centrum) swojej własnej komórki i ponownie oblicz. Powtarzanie tego kilkakrotnie konverguje w kierunku tessellation centrówalnego Voronoi, gdzie każda komora jest centrami swojego siedziby — widocznie znacznie bardziej równomierna. Ten sam technikę relaksacji można użyć do generowania rozkładów punktowych z szumem niebieskim oraz do wyrównywania siłek w grafice komputerowej.

Często zadawane pytania

Dlaczego niektóre wzory krystaliczne podobne do Voronoi mają zatarte granice, zamiast prostej?

Proste granice pojawiają się tylko wtedy, gdy wszystkie siadki nukleują jednocześnie i rosną z jednakową prędkością — czysty diagram Voronoi. Jeśli siadki pojawiają się na różne momenty (ciągła nukleacja), front wzrostu wcześniejszego siadka ma przewagę nad późniejszym sąsiadem, więc granica między nimi jest ustanowiona przez równą czas dojścia zamiast równego odległości — co powoduje zatarte, stylowe granice Johnsona-Mehla skierowane ku późniejszemu siadkowi.

Co rzeczywiście mówi wykładnik Avramiego n o materiałach?

Wskazuje on zarówno wymiarowość wzrostu (1-D igły, 2-D dyski, 3-D sfer), jak i czy nukleacja następuje jednocześnie lub ciągle w czasie. Dopasowanie n na podstawie danych eksperymentalnych dotyczącej ułamka transformacji jest standardowym sposobem na wnioskowanie, bez konieczności obserwacji mikrostruktury bezpośrednio, czy sól lub krystalizujący materiał nukleował w jednym zbiucie czy kontynuował nukleację nowych kryształów przez cały proces.

Co właściwie robi relaksacja Lloyd'a dla diagramu?

Znów i znów przesuwa każdy siadek do srodka komórki, którą obecnie posiada, a następnie recalkuluje tessellation. Z matematycznego punktu widzenia jest to taka sama reguła aktualizacji jak k-means clustering. Każda iteracja zmniejsza wariancję rozmiarów i kształtów komórek, konvergując ku centroidalnej tessellation Voronoi, w której każdy siadek znajduje się na centrum masy swojej komórki — co daje znacznie bardziej uniformizowaną mosaikę niż oryginalna losowa rozrzut.

Wypróbuj na żywo

Wszystko powyżej działa bezpośrednio w Twojej przeglądarce — otwórz Voronoi Growth i zmieniaj parametry podczas działania. Nic nie jest instalowane ani przesyłane na serwer, cały model działa w jednej karcie.

▶ Otwórz symulację Voronoi Growth

Co znalazłeś?

Dodaj kroki odtworzenia (opcjonalnie)