Mechanika statystyczna — entropia, Boltzmann i przejścia fazowe

Dlaczego ciepło płynie od gorącego do zimnego? Dlaczego przejścia fazowe zachodzą w precyzyjnie określonych temperaturach? Mechanika statystyczna odpowiada na oba pytania jedną ideą: zachowanie makroskopowe wyłania się ze zliczania mikrostanów. Czynnik Boltzmanna e^(−E/kT), model Isinga i algorytm Metropolisa — wszystko to wynika z tego argumentu zliczania.

Od mikrostanów do makrostanów

Klasyczna termodynamika opisuje silniki cieplne i diagramy fazowe, nie pytając, co robią cząsteczki. Mechanika statystyczna robi coś przeciwnego: wyprowadza każdą wielkość termodynamiczną — temperaturę, entropię, ciśnienie — z mikroskopowych prawdopodobieństw. Pomost między nimi jest prosty: układ w równowadze termicznej zajmuje każdy mikrostan z prawdopodobieństwem proporcjonalnym do e^(−E/kT), czynnika Boltzmanna.

Entropia S = k·ln(Ω) zlicza mikrostany. Druga zasada termodynamiki — entropia nigdy nie maleje w układzie izolowanym — mówi jedynie tyle, że układ zmierza ku makrostanom o większej liczbie mikrostanów. Przy 10²³ cząstkach prawdopodobieństwo cofnięcia się jest praktycznie zerowe.

Rozkład Maxwella-Boltzmanna Cząsteczki gazu w temperaturze T: obserwuj, jak rozkład prędkości wyłania się z losowych zderzeń sprężystych. Podnieś T i zobacz, jak rozkład się poszerza; obniż T i patrz, jak zwęża się do zera. Prędkość średniokwadratowa i prędkość najbardziej prawdopodobna śledzone na żywo. Dynamika zderzeń sprężystych · dopasowanie rozkładu MB · prędkość średniokwadratowa 🧲 Model Isinga i przejście fazowe Dwuwymiarowa siatka spinów magnetycznych ewoluująca zgodnie z algorytmem Metropolisa. Poniżej temperatury Curie T_c porządek ferromagnetyczny pojawia się spontanicznie. Dokładnie przy T_c długość korelacji rozbiega się i widać fraktalny wzór domen. Metropolis Monte Carlo · hamiltonian Isinga · spontaniczne łamanie symetrii 🎲 Całkowanie Monte Carlo Szacuj π, oblicz całki wielowymiarowe i próbkuj z dowolnych rozkładów prawdopodobieństwa metodą próbkowania istotnego. Obserwuj, jak błąd statystyczny maleje jak 1/√N — fundamentalne tempo zbieżności Monte Carlo. Próbkowanie istotne · redukcja wariancji · zbieżność 1/√N 🌊 Kinetyka siatki Boltzmanna LBM symuluje równanie transportu Boltzmanna bezpośrednio na siatce, odtwarzając równania Naviera-Stokesa w granicy makroskopowej. Piękny przykład tego, jak zachowanie płynu w ośrodku ciągłym wyłania się z dyskretnych zderzeń fikcyjnych cząstek. Równanie transportu Boltzmanna · zderzenia BGK · rozwinięcie Chapmana-Enskoga
Rozkład Boltzmanna i funkcja rozdziału

Prawdopodobieństwo mikrostanu i:  P_i = e^(−E_i/kT) / Z

Funkcja rozdziału: Z = Σ_i e^(−E_i/kT)  (suma po wszystkich mikrostanach)

Energia swobodna Helmholtza: F = −kT · ln Z
Energia średnia: ⟨E⟩ = −∂(ln Z)/∂β  gdzie β = 1/kT
Entropia: S = −∂F/∂T = k·ln Z + ⟨E⟩/T

Hamiltonian Isinga: H = −J·Σ_{⟨ij⟩} s_i·s_j − h·Σ_i s_i
Prawdopodobieństwo akceptacji Metropolisa: min(1, e^(−ΔE/kT))

Przejścia fazowe i zjawiska krytyczne

Model Isinga przechodzi przejście fazowe drugiego rodzaju w temperaturze Curie T_c ≈ 2,269 J/k (dokładne rozwiązanie 2D Onsagera, 1944). Poniżej T_c układ łamie symetrię: spiny ustawiają się ferromagnetycznie. Dokładnie w T_c długość korelacji ξ → ∞, fluktuacje zachodzą na każdej skali długości, a układ jest opisywany przez skalowo niezmienniczą (konforemną) teorię pola. Dlatego opalescencja krytyczna wygląda tak samo pod mikroskopem, jak i z odległości wyciągniętej ręki.

Dlaczego działa algorytm Metropolisa? Reguła Metropolisa — zawsze akceptuj ruchy obniżające energię, czasem akceptuj ruchy ją podwyższające — spełnia zasadę równowagi szczegółowej: strumień prawdopodobieństwa ze stanu A do stanu B jest równy strumieniowi z B do A w równowadze. To gwarantuje, że łańcuch Markowa zbiega do rozkładu Boltzmanna niezależnie od konfiguracji początkowej.

Implementacja metody Metropolis Monte Carlo

// Krok Metropolisa dla modelu Isinga (2D, warunki periodyczne)
function metropolisStep(spins, J, T) {
  const N = spins.length;
  const i = (Math.random() * N) | 0;
  const j = (Math.random() * N) | 0;

  // Zmiana energii przy odwróceniu spin[i][j]
  const s = spins[i][j];
  const neighbours =
    spins[(i + 1) % N][j] + spins[(i - 1 + N) % N][j] +
    spins[i][(j + 1) % N] + spins[i][(j - 1 + N) % N];
  const dE = 2 * J * s * neighbours;

  // Akceptacja / odrzucenie (kryterium Metropolisa)
  if (dE <= 0 || Math.random() < Math.exp(-dE / T)) {
    spins[i][j] = -s;   // odwróć spin
  }
}

Algorytmy w skrócie

Rozkład Boltzmanna Funkcja rozdziału Z Metropolis Monte Carlo Hamiltonian Isinga Spontaniczne łamanie symetrii Rozkład Maxwella-Boltzmanna Rozwinięcie Chapmana-Enskoga Równowaga szczegółowa Równanie Langevina Przemieszczenie średniokwadratowe Próbkowanie istotne Zbieżność 1/√N