Szczegóły ebooka

Symulacje komputerowe w fizyce. Wydanie II

Symulacje komputerowe w fizyce. Wydanie II

Maciej Matyka

Ebook

Symulacje komputerowe - od podstaw!

  • Poznaj metody numeryczne
  • Naucz się stosować je w praktyce
  • Odkryj świat symulacji komputerowych

Ostatnie kilkadziesiąt lat to okres burzliwego rozwoju technologii informatycznych i ciągłego zwiększania możliwości komputerów dostępnych dla coraz to szerszych rzesz użytkowników. Z zaawansowanych narzędzi graficznych i symulacyjnych mogą obecnie korzystać już nie tylko profesjonaliści zatrudnieni w dużych korporacjach dysponujących ogromnymi zasobami finansowymi, lecz również pasjonaci, programiści i graficy pracujący dla niewielkich firm, które tworzą animacje komputerowe na użytek przemysłu czy branży rozrywkowej.

Realistyczne, uniwersalne i interaktywne efekty można tu uzyskać tylko w jeden sposób: wykorzystując fizyczne metody symulacji ruchu, do tego zaś niezbędna jest odpowiednia wiedza. Drugie wydanie książki Symulacje komputerowe w fizyce wprowadzi Cię w podstawy metod numerycznych oraz przedstawi ich zastosowanie w praktyce. Dowiesz się, jak przeprowadzać symulacje prostych i bardziej złożonych zjawisk fizycznych, rozwiązywać równanie falowe oraz symulować zachowanie cieczy nieściśliwych i gazów, a nawet wkroczysz w tajemniczy świat fizyki kwantowej. Symulacja flagi trzepoczącej na wietrze, miękkiej piłki odbijającej się od powierzchni czy oporu, który powietrze stawia jadącemu samochodowi? Przekonasz się, że to nic trudnego!

Książka jest przeznaczona zarówno dla studentów, jak i uczniów starszych klas szkół średnich, dla których może stanowić wstęp do praktycznego programowania symulacji i modelowania fizycznego w animacji komputerowej. Pozycja szczególnie zainteresuje studentów oraz kadrę dydaktyczną kierunków ścisłych, na przykład wykładowców modelowania komputerowego czy fizyki komputerowej, dla których może być punktem wyjścia do dalszego zgłębiania przedstawionych modeli. Do książki dołączony jest zbiór napisanych w językach C++, OpenGL oraz HTML5 programów, które ilustrują sposób przeprowadzania opisanych symulacji.

  • Symulacje zjawisk mechaniki klasycznej
  • Dynamika ciał miękkich w czasie rzeczywistym
  • Rozwiązanie numeryczne równania falowego
  • Symulacje dynamiki płynów (CFD)
  • Rozwiązanie numeryczne równania SchrOdingera

Poznaj metody numeryczne od podszewki!

 

Wstęp 7

 

Rozdział 1. Schematy różnicowe rozwiązywania równań różniczkowych zwyczajnych 11

  • 1.1. Równania różniczkowe zwyczajne i różnice skończone 11
  • 1.2. Równania różniczkowe zwyczajne i rachunek całkowy 13
    • 1.2.1. Schemat różnicowy Eulera 13
    • 1.2.2. Rozwiązanie równania rozpadu promieniotwórczego 16
    • 1.2.3. Metoda skokowa z wstępnymi obliczeniami Eulera 19
    • 1.2.4. Wahadło matematyczne 24
    • 1.2.5. Punkt materialny przymocowany do sprężyny 33
  • 1.3. Dokładniejsze metody wyznaczania rozwiązań równań różniczkowych 39
    • 1.3.1. Metoda punktu środkowego drugiego rzędu 40
    • 1.3.2. Metoda Rungego-Kutty czwartego rzędu 42
  • 1.4. Zestawienie poznanych schematów rozwiązywania równań różniczkowych zwyczajnych 44
  • 1.5. Podsumowanie 46

Rozdział 2. Dynamika według sir Isaaca Newtona 47

  • 2.1. Rachunek wektorowy 47
    • 2.1.1. Klasa Wektor 48
    • 2.1.2. Operacje na wektorach 49
    • 2.1.3. Rachunek wektorowy - podsumowanie 55
  • 2.2. Zasady dynamiki Newtona 56
    • 2.2.1. Pierwsza zasada dynamiki Newtona 56
    • 2.2.2. Druga zasada dynamiki Newtona 56
    • 2.2.3. Trzecia zasada dynamiki Newtona 56
  • 2.3. Model fizyczny dynamiki układów punktów materialnych 57
    • 2.3.1. Elementy składowe modelu 57
  • 2.4. Punkt materialny 60
    • 2.4.1. Przechowywanie danych. Lista jednokierunkowa 60
    • 2.4.2. Równania ruchu pojedynczego punktu materialnego 64
  • 2.5. Kolizje 68
    • 2.5.1. Prosta metoda wykrywania kolizji punkt - ściana 68
    • 2.5.2. Nieruchoma sfera kolizji 70
  • 2.6. Oddziaływania między punktami materialnymi 79
    • 2.6.1. Prawo powszechnego ciążenia 80
    • 2.6.2. Oddziaływanie sprężyste pary punktów 83
  • 2.7. Konstruowanie obiektów złożonych 86
    • 2.7.1. Model dwuwymiarowego sznura 86
    • 2.7.2. Symulacja trójwymiarowych tkanin 89
    • 2.7.3. Konstrukcja bryły sztywnej 90
    • 2.7.4. Konstrukcja modelu poruszającej się postaci 93
  • 2.8. Obiekty złożone z "mięśniami" 95
    • 2.8.1. Więzy odległości 99
  • 2.9. Ciała miękkie 103
    • 2.9.1. Symulacja flagi 103
    • 2.9.2. Szczypta historii 106
    • 2.9.3. Model fizyczny ciał miękkich 107
    • 2.9.4. Ciśnienie i równanie stanu gazu doskonałego 109
    • 2.9.5. Objętość zamkniętej bryły 110
    • 2.9.6. Algorytm symulacji ciała miękkiego 113
    • 2.9.7. Kod źródłowy symulacji ciał miękkich - HTML5 116
    • 2.9.8. Przykłady symulacji 127
    • 2.9.9. Wzajemne kolizje 128
    • 2.9.10. Zmienny krok czasowy symulacji 132
    • 2.9.11. Perspektywy ciał miękkich 133
  • 2.10. Podsumowanie 135

Rozdział 3. Rozwiązanie numeryczne równania falowego 137

  • 3.1. Co to jest fala? 137
  • 3.2. Klasyczne równanie falowe 138
  • 3.3. Równanie falowe w jednym wymiarze 138
    • 3.3.1. Podział równania falowego na układ dwóch sprzężonych równań różniczkowych pierwszego rzędu 139
    • 3.3.2. Siatka różnicowa Eulera w jednym wymiarze 139
    • 3.3.3. Rozwiązanie algorytmiczne układu równań sprzężonych 140
    • 3.3.4. Algorytm programu realizującego równanie falowe 1D 141
    • 3.3.5. Efekty działania przedstawionego algorytmu 147
  • 3.4. Równanie falowe w dwóch i więcej wymiarach przestrzennych 152
    • 3.4.1. Siatka różnicowa Eulera w dwóch wymiarach 153
    • 3.4.2. Realizacja symulacji równania falowego w dwóch wymiarach 157
  • 3.5. Podsumowanie 164

Rozdział 4. Symulacje cieczy nieściśliwej 165

  • 4.1. Równanie Naviera-Stokesa dla cieczy nieściśliwej 165
    • 4.1.1. Warunek nieściśliwości cieczy 166
    • 4.1.2. Pola wektorowe 167
    • 4.1.3. Analiza równania Naviera-Stokesa 169
  • 4.2. Rozwiązanie uproszczone równań NS 172
    • 4.2.1. Równanie płytkiej wody 172
    • 4.2.2. Warunek zachowania masy 173
    • 4.2.3. Końcowa postać równania dla płytkiej wody 174
    • 4.2.4. Przybliżenie dyskretne 175
    • 4.2.5. Efekty działania 178
  • 4.3. Pełne rozwiązanie równań NS dla cieczy nieściśliwej 180
    • 4.3.1. Reprezentacja cieczy 181
    • 4.3.2. Schematy różnicowe dla równania NS 187
    • 4.3.3. Warunki brzegowe 197
    • 4.3.4. Algorytm programu 201
    • 4.3.5. Wizualizacja rezultatów obliczeń 215
  • 4.4. Ogólnie o schematach różnicowych 219
  • 4.5. Metoda gazu sieciowego Boltzmanna 220
    • 4.5.1. LBM a gaz sieciowy LGA 221
    • 4.5.2. Funkcja rozkładu 222
    • 4.5.3. Model dwuwymiarowy (D2Q9) 223
    • 4.5.4. Prędkość, gęstość, ciśnienie 225
    • 4.5.5. Równanie transportu Boltzmanna 226
    • 4.5.6. Algorytm 230
    • 4.5.7. Implementacja LBM w języku C/C++ 232
    • 4.5.8. Przepływ wielofazowy 262
    • 4.5.9. Model trójwymiarowy (D3Q15) 267
    • 4.5.10. Przepływ przez ośrodki porowate 271
    • 4.5.11. Jednostki fizyczne w LBM 291
    • 4.5.12. Metoda wielorelaksacyjna LBM-MRT 296
    • 4.5.13. Metoda LBM dla tau = 1 300
    • 4.5.14. Przepływ z powierzchnią swobodną 311
  • 4.6. Podsumowanie 313

Rozdział 5. Równanie Schrödingera 315

  • 5.1. Funkcja falowa - wektor stanu układu kwantowego 315
  • 5.2. Ewolucja w czasie stanu układu kwantowego 316
  • 5.3. Dyskretna postać operatora ewolucji w czasie 317
  • 5.4. Schemat rozwiązania różnicowego 318
  • 5.5. Stan początkowy układu 319
  • 5.6. Implementacja 319
    • 5.6.1. Algorytm programu 320
    • 5.6.2. Konstrukcja stanu początkowego 320
    • 5.6.3. Pętla obliczeniowa 322
  • 5.7. Rezultaty 324
  • 5.8. Podsumowanie 326

Dodatek A. Materiały dołączone do książki 327

Bibliografia 351

Skorowidz 364

  • Tytuł: Symulacje komputerowe w fizyce. Wydanie II
  • Autor: Maciej Matyka
  • ISBN: 978-83-283-7720-2, 9788328377202
  • Data wydania: 2020-12-22
  • Format: Ebook
  • Identyfikator pozycji: sykof2
  • Wydawca: Helion