Modele dyskretnych układów fizycznych

advertisement
Sławomir Kulesza
[email protected]
Symulacje komputerowe (08)
Modele dyskretnych układów
fizycznych
Wykład dla studentów Informatyki
Ostatnia zmiana: 23 kwietnia 2015 (ver. 4.0)
Układy mas punktowych
●
●
Cząstki są ciałami fizycznymi, które posiadają
masę, położenie i prędkość, lecz nie mają
rozmiarów przestrzennych – masy punktowe.
Założenia:
–
wszystkie ciała są zbudowane z cząstek,
–
cząstki mogą oddziaływać wzajemnie i z
otoczeniem, jak też otoczenie może wpływac na
cząstki,
–
wprowadzenie sił o różnych charakterystykach
pozwala odtwarzać wszystkie możliwe
zachowania.
Układy mas punktowych
Układy mas punktowych
●
●
●
Cząstki są najprostszymi obiektami do symulacji,
aczkolwiek mogą wykazywać szerokie spektrum
zachowań, ponieważ poruszają się w polu sił.
Cząstki mogą być na bieżąco generowane i
usuwane – posiadają czas życia.
Zespoły cząstek oddziałujących ze sobą są
podstawą symulacji ciał sprężystych i ciał
sztywnych oraz obiektów jak np.: piasek, woda,
dym, ogień itp.
Układy mas punktowych
Ruch punktu materialnego
●
●
Ruch jest fundamentalnym zjawiskiem
zachodzącym w dynamicznych układach
fizycznych (zmiennych w czasie). Ruch
opisywany jest zawsze względem początku
wybranego układu odniesienia.
Z uwagi na trajektorię ruchu ciała wyróżnia się:
–
ruch prostoliniowy, którego torem jest prosta,
–
ruch obrotowy, którego torem jest okrąg o środku
leżącym na osi obrotu.
Ruch punktu materialnego
Położenie – przemieszczenie
●
Położenie ciała [m] – wektor opisujący
chwilową pozycję ciała względem początku
układu współrzędnych:
⃗r (t)=[ x (t ), y (t), z (t)]
●
Przemieszczenie ciała [m] – wektor łączący
początek i koniec toru jego ruchu:
⃗ r (t )=⃗r (t k )−⃗r (t 0 )=...
Δ
...=[ x (t k )− x(t 0 ), y (t k )− y (t 0 ), z (t k )−z (t 0 ) ]
Położenie – przemieszczenie
Prędkość
●
Prędkość ciała [m/s] – wektor opisujący
przemieszczenie ciała zachodzące
w infinitezymalnie krótkim przedziale czasu:
Δ r (t ) d ⃗r (t )
⃗
V (t )= lim
=
=...
Δt
dt
Δ t →0
dx(t ) dy (t ) dz(t )
...=
,
,
=[V x (t ), V y (t ), V z (t )]
dt
dt
dt
[
]
Przyspieszenie
●
Przyspieszenie ciała [m/s2]– wektor opisujący
zmiany prędkości ciała zachodzące w
infinitezymalnie krótkim przedziale czasu:
2
⃗
Δ V (t ) d V (t ) d ⃗r (t )
⃗
a (t )= lim
=
=
=...
2
Δt
dt
Δ t →0
dt
dV x (t ) dV y (t ) dV z (t )
...=
,
,
=[a x (t ), a y (t ), a z (t )]
dt
dt
dt
[
]
Przestrzeń fazowa
●
6-wektor: [r(t); p(t)] jednoznacznie opisuje
położenie ciała w tzw. przestrzeni fazowej,
zawierającej wszystkie możliwe stany
położeniowe i pędowe ciała. Trajektoria w
przestrzeni fazowej opisuje więc pełną historię
ruchu ciała.
Oscylator nieliniowy
Ewolucja położenia w czasie
Trajektoria w przestrzeni fazowej
Ewolucja chaotyczna
Trajektoria w przestrzeni fazowej
Klasyczna dynamika mas
punktowych
●
Dynamika – dział fizyki zajmujący się
badaniem przyczyn ruchu. Stan ruchu ciała
jest jednoznacznie określony przez jego
chwilową prędkość i położenie, natomiast
zmiana tego stanu jest wynikiem działania na
ciało niezerowej siły wypadkowej.
III zasada dynamiki ruchu
postępowego
●
Jeśli ciało A działa na ciało B siłą FAB, to ciało
B działa na ciało A siłą FBA równą co do
wartości sile FAB, lecz przeciwnie do niej
skierowaną.
II zasada dynamiki ruchu
postępowego
●
Zmiana pędu ciała jest równa wypadkowej sile
przyłożonej do tego ciała.
II zasada dynamiki ruchu
postępowego
2
d
⃗
p
d
⃗
r
⃗ = =m⋅
F
=m⋅⃗a
2
dt
dt
●
Jest to równanie ruchu cząstki wiążące ze
sobą przyczynę ruchu (siłę) oraz jej skutek
(zmiana stanu cząstki w przestrzeni fazowej).
Jest to równanie różniczkowe 2 rzędu (2nd
order ODE).
II zasada dynamiki ruchu
postępowego
●
Zmiana trajektorii ruchu cząstki jest tym
silniejsza, im mniejsza masa cząstki lub większa
siła na nią działająca.
2 → 1 order ODE
nd
●
●
st
Każde równanie różniczkowe zwyczajne n-tego
rzędu może zostać zamienione na układ n-równań
różniczkowych zwyczajnych 1 rzędu.
W przypadku równań ruchu jako zmienną
pomocniczą do otrzymania pary równań
sprzężonych 1 rzędu wykorzystuje się prędkość
ciała V:
II zasada dynamiki w przestrzeni
fazowej
●
Stan cząstki w 3-wymiarowej przestrzeni
fazowej opisuje 6-wektor:
[]
x
Vx
⃗r = y
⃗
Vy
V
z
Vz
[]
II zasada dynamiki w przestrzeni
fazowej
●
Równanie ruchu cząstki w przestrzeni fazowej
(II zasada dynamiki Newtona) ma postać:
[]
d ⃗r
d ⃗r
⃗
dt
V
=
=
⃗
⃗
dt V
dV
⃗
a
dt
[]
[]
Struktura opisu cząstki
●
Pełny opis stanu cząstki, poza stanem w
przestrzeni fazowej, wymaga także włączenia jej
masy oraz działającej siły (model oddziaływań):
[]
⃗r
⃗
V
⃗u =
⃗
F
m
●
W przypadku układu n-cząstek jest to macierz
(10×n)
Solver ODE
●
Scilab posiada dedykowany solver ODE do
rozwiązywania równań różniczkowych
zwyczajnych 1 rzędu, wywoływany w postaci:
[ ] ([ ]
r⃗
r⃗ini
new
=ode
, t 0 , t , function
V⃗new
V⃗ini
)
Pamiętaj!!!
●
Równania różniczkowe różnią się od równań
algebraicznych. Do ich rozwiązania nie
wystarczy sama postać równania, ale
niezbędna jest także znajomość warunków
początkowych.
Jednoznaczność rozwiązań ODE
Siły działające w układach
fizycznych
●
Działająca na ciała siła F może przyjmować jedną
z poniższych postaci:
–
siła stała (np. siła grawitacji): F = const,
–
siła zależna od położenia (np. siła sprężystości): F =
F(r),
–
siła zależna od prędkości (np. siła oporu): F = F(V),
–
siła zależna od czasu (np. siła wymuszająca): F = F(t).
Siła grawitacji
●
Gdy odległość między cząstką a powierzchnią
Ziemi jest znacznie mniejsza niż promień Ziemi,
siła grawitacji jest stała i wynosi:
F⃗G =−m⋅g⋅⃗
e y =[0,−m⋅g , 0]
gdzie: g = 9.81 m/s2 – przyspieszenie
grawitacyjne na powierzchni Ziemi (ale: g = g(r)).
Siła grawitacji
●
W ogólności, siła grawitacji jest zależna od
mas przyciągających się ciał oraz odległości
między ich środkami i wynosi:
F⃗G =G m1⋅m2
r⃗12
r
3
12
gdzie: G = 6.67·10-11 N·m2/kg2 – stała
grawitacji (uniwersalna), r12 – wektor łączący
środki cząstek 1 oraz 2.
Siła grawitacji
Siła sprężystości
●
W pierwszym przybliżeniu siłę sprężystości
można opisywać zależnością liniową zgodnie z
prawem Hooke'a:
F⃗spr =−k spr ( ⃗r −r⃗s )
gdzie:
–
kspr – stała sprężystości,
–
rs – długość spoczynkowa sprężyny.
Siła sprężystości
Siła sprężystości
Siła sprężystości
●
Analogicznie można modelować siły
powodujące odkształcenia skręcające,
pamiętając że wprowadzają one momenty sił
Siła wymuszająca
●
W rzeczywistych układach fizycznych ruch może
być podtrzymywany przez długi czas, nawet
pomimo istnienia znaczących sił oporu ośrodka.
Dzieje się tak za sprawą istnienia zewnętrznych sił
wymuszających. W najprostszym przypadku mogą
to być siły harmoniczne, np.:
⃗ wym = A cos(ω⋅t +ϕ)
F
gdzie: A – amplituda siły, ω – częstość drgań, Φ –
faza początkowa.
●
Jeśli częstość drgań siły wymuszającej zrówna się z
częstością drgań własnych układu, mówimy
wówczas o rezonansie mechanicznym.
Rezonans mechaniczny
Rezonans mechaniczny
Opór laminarny
●
Masa poruszająca się w ośrodku lepkim
doznaje działania siły hamującej powstającej na
skutek tarcia między powierzchnią ciała
a drobinami ośrodka (lepkość). Jeśli prędkość
ciała jest na tyle mała, że opływ jest laminarny,
stosujemy wówczas prawo Stokesa:
⃗
F⃗lam=−6 π ηr V
gdzie: η – lepkość dynamiczna ośrodka, r –
promień kuli, V – prędkość kuli.
Opływ laminarny
Opór turbulentny
●
W przypadku ruchu powodującego odrywanie
się gładkich strug i tworzenie wirów,
zasadniczym źródłem oporu jest różnica
ciśnień przed i za poruszającym się ciałem:
⃗ ∣2
C x⋅S⋅d p⋅∣V
F⃗turb =−
2
gdzie: Cx – wsp. oporu ciała (zależny od
kształtu), S – powierzchnia natarcia, dp –
gęstość płynu, V – prędkość ciała.
Opływ turbulentny
Zderzenia ciał
●
●
Poza siłami jawnie wyspecyfikowanymi
wcześniej, ruch cząstek jest dodatkowo
modyfikowany siłami powstającymi podczas ich
bezpośrednich zderzeń z przeszkodami (np.
ścianami naczynia) oraz innymi cząstkami.
Symulacje numeryczne zderzeń są procesem
dwuetapowym i obejmują:
–
detekcję zderzeń – kontrolę położenia cząstek
względem przeszkód,
–
obsługę zderzeń – transformację prędkości
zderzających się cząstek.
Detekcja zderzenia
●
Załóżmy, że cząstka zbliża się do nieruchomej
ściany, opisywanej wektorem normalnym n = [nx,
ny]. Detekcja zderzenia polega na sprawdzeniu
warunku, czy przewidywane położenie cząstki nie
znajduje się poza obszarem dozwolonym:
Obsługa zderzenia
●
W momencie wykrycia kolizji, wektor prędkości
cząstki rozkładamy na dwie składowe:
normalną i styczną do ściany:
⃗ =V⃗n + V⃗s =V⋅⃗
⃗ n + V⃗s
V
Obsługa zderzenia
●
Z analizy sytuacji wynika, że w trakcie zderzenia
zmianie ulega jedynie składowa normalna
prędkości cząstki, zaś jej składowa styczna
pozostaje bez zmian. Możemy dzięki temu
napisać, że:
⃗ '=−k COR⋅V⃗n + V⃗s =−k COR⋅V⃗n +( V
⃗ −V⃗n)=…
V
⃗ −( 1+k COR )⋅V⃗n= V
⃗ −(1+k COR )⋅( V
⃗⋅⃗
…= V
n )⋅⃗
n
●
gdzie: 0 ≤ kCOR ≤ 1 jest współczynnikiem restytucji
(odbicia).
Obsługa zderzenia
●
Po rozpisaniu wektorów V oraz V' na składowe
otrzymujemy, że:
V ' x =V x −(1+k COR )⋅(V x⋅n x +V y⋅n y )⋅n x
V ' y =V y −(1+k COR )⋅(V x⋅n x +V y⋅n y )⋅n y
●
Dzięki temu, do obsługi zderzenia ze ścianą o
znanej geometrii (znanym wektorze normalnym)
wystarcza tylko znajomość składowej normalnej
prędkości V.
Przestrzelenia
●
●
Specyfika obliczeń numerycznych sprawia, że
kolejne położenia ciał liczone są w dyskretnych
odstępach czasu, a więc ich trajektorie nie są
krzywymi gładkimi. W przypadku detekcji kolizji
oznacza to ryzyko przestrzelenia przeszkody.
Naprościej problem przestrzeleń ogranicza się
cofając trajektorię do punktu wcześniejszego i z
niego kontynuując ruch. Istnieją jednak bardziej
zaawansowane metody precyzyjnego wykrywania
kontaktu cząstki z przeszkodą (kosztowne
obliczeniowo), np. metoda połowienia przedziału
(skracania kroku trajektorii) czy też metody
interpolacyjne.
Przestrzelenia
Zderzenia cząstek
●
●
Każdy proces zderzeń mas punktowych podlega
prawu zachowania pędu.
Pęd układu ciał izolowanych jest stały w czasie:
N
∑ m⋅V⃗ =const
k =1
Zderzenia sprężyste
●
Jeśli w procesie zderzenia zachowany jest nie
tylko całkowity pęd układu, ale także jego
energia kinetyczna (nie ma strat energii), to taki
proces nazywamy zderzeniem sprężystym:
N
∑
k =1
2
⃗
m⋅V
=const
2
Zderzenia sprężyste w 1D
●
W przypadku zderzeń w 1 wymiarze, wzory
transformacyjne prędkości przyjmują postać:
V 1 (m1−m 2 )+2 m 2 V 2
V 1'=
m1 + m 2
V 2 (m 2−m1)+2 m1 V 1
V 2'=
m1 +m 2
Zderzenia sprężyste w 2D
●
Gdy ruch zachodzi w 2 wymiarach, wówczas
zderzeniami rządzi zasada, iż: (1) składowe
styczne prędkości obu cząstek nie ulegają
zmianie, natomiast (2) składowe normalne
transformują się jak w przypadku 1-wymiarowym:
Zderzenia sprężyste w 2D
●
W sytuacji 2-wymiarowej wzory
transformacyjne prędkości przyjmują postać:
2 m2
⃗ 2n − V
⃗ 1n )
V⃗1 ' = V⃗1 +
(V
m1 + m 2
2 m1
⃗ 1n − V
⃗ 2n )
V⃗2 ' = V⃗2 +
(V
m1 + m 2
Zderzenia sprężyste w 2D
2 m2
V 1x ' =V 1x +
(V 2x⋅n x +V 2y⋅n y )−(V 1x⋅n x +V 1y⋅n y ))⋅n x
(
m 1 +m 2
2 m2
V 1y ' =V 1y +
(V 2x⋅n x +V 2y⋅n y )−(V 1x⋅n x +V 1y⋅n y ) )⋅n y
(
m1 + m 2
2 m1
V 2x ' =V 2x +
(V 1x⋅n x +V 1y⋅n y )−(V 2x⋅n x +V 2y⋅n y ) )⋅n x
(
m1 + m 2
2 m1
V 2y ' =V 2y +
(V 1x⋅n x +V 1y⋅n y )−(V 2x⋅n x +V 2y⋅n y ) )⋅n y
(
m 1 + m2
Download