UKŁAD MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się nie będziemy zajmować

64
UKŁAD <-> MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się nie będziemy zajmować 2) I czym zajmować się będziemy geometria i granice układu co „siedzi” w układzie jakie „są relacje” układu z otoczeniem czy mamy do czynienia ze stanem równowagi, czy też nie; jeśli nie, to czy proces jest np. stacjonarny w jaki sposób rzeczywisty układ, zawierający ~10 23 elementów „zmieścić” w komputerze jaką zastosować metodę modelowania Geometria i granice układu: jak najbliżej rzeczywistości (np. układy objętościowe, układy

description

UKŁAD MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się nie będziemy zajmować 2) I czym zajmować się będziemy geometria i granice układu co „siedzi” w układzie jakie „są relacje” układu z otoczeniem - PowerPoint PPT Presentation

Transcript of UKŁAD MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się nie będziemy zajmować

Page 1: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

UKŁAD <-> MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH1) czym się nie będziemy zajmować2) I czym zajmować się będziemy • geometria i granice układu• co „siedzi” w układzie• jakie „są relacje” układu z otoczeniem• czy mamy do czynienia ze stanem równowagi, czy też nie; jeśli nie, to czy proces jest np. stacjonarny• w jaki sposób rzeczywisty układ, zawierający ~1023 elementów „zmieścić” w komputerze • jaką zastosować metodę modelowania

Geometria i granice układu: jak najbliżej rzeczywistości(np. układy objętościowe, układy niejednorodne (w polach zewnętrznych), pory, membrany, stopy, transport przez „rurki”, itp.)

Page 2: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

W układzie „siedzą” cząsteczki. Cząsteczki owe, ich „zachowaniesię” mamy modelować

x

y

zx1,y1,z1+kąty Eulera1

x2,y2,z2+kąty Eulera2

przykład cząsteczek wodyna czerwono: samemuuzupełnić wiadomości

Page 3: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

oscylacja wiązań

rotacja

cząsteczka wody posiada teżmoment dipolowy i momentkwadrupolowy, tzn.

-+

dipol

Page 4: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

polimer, zbudowany z grup atomów, fragment łańcuchaw powiększeniu obok

ILOŚĆ ZMIENNYCH (współrzędnych) niezbędnychdo opisu ruchu cząsteczki zależy od przyjętego modelu.Jeśli cząsteczkę polimeru „zastąpimy” kulką, to wystarcząnam 3 współrzędne. Jeśli każdy segment polimeru potraktujemyjako kulkę i przyjmiemy, że polimer jest „giętki”, tzn. segmentymogą się względem siebie poruszać, to liczba współrzędnychwyniesie 3*M, gdzie M jest ilością segmentów. Jeśli zaś polimer będzie „sztywny”, tzn. segmenty nie będą zmieniały swychwzajemnych położeń - to liczba współrzędnych =6 (jak dlaciała sztywnego o dowolnej geometrii)

Page 5: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Mechanika klasyczna; efekty kwantowe uwzględniamy jedynie na poziomie jednocząsteczkowym, tzn. w jednocząsteczkowych sumach stanów! W istocie w rozważanych później procesach efekty kwantoweprowadzą do zaniedbywalnie małych poprawek. Wyjątkiemsą bardzo lekkie pierwiastki: wodór, hel i częściowo neonw niskich temperaturach.Nawet przy modelowaniu reakcji chemicznych nie będziemybrać pod uwagę efektów kwantowych. Dokładniej: potencjałyoddziaływań używane w obliczeniach są otrzymywane wwyniku obliczeń kwantowo-mechanicznych. Jednak równaniaruchu są klasyczne (równania Newtona), a nie równaniaSchroedingera z czasem - „pomijamy” więc zasady nieoznaczoności. W przypadku ruchów elektronów tak postapicnie wolno, ale w przypadku ruchów atomów, wiele tysięcy razycięższych od elektronów, nie prowadzi do błedów

Page 6: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Podsumowując: „to co siedzi w układzie”, opis cząsteczekzależy od nas - od tego, co chcemy badać. Im bardziej„mikroskopowy” opis cząsteczek - tym trudniejsze i bardziejczasochłonne obliczenia. Z drugiej strony - im dokładniejszymodel cząsteczek, tym poprawniejsze wyniki. Model jest zawsze kompromisem pomiędzy dokładnościąa możliwością lub/i czasem obliczeń

1

Page 7: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

„relacje” układu z otoczeniem, stan równowagi czy też„steady state” (przemian turbulentych badać nie będziemy)1) Stan równowagi - zespoły statystyczne• mikrokanoniczny• kanoniczny• wielki kanoniczny• izobaryczno-izotermiczny• ugólniony (Gibbsa), itp.2) Stan stacjonarny - w jaki sposób stan taki się ustala czylijak ustala się np. stała srednia liczba cząsteczek („przypływi odpływ cząsteczek”) oraz jak zachodzi dysypacja energii.Przykład: stacjonarny przepływ płynu przez rurkę, kapilarę, por (slip-no slip)Przykład: materiały granularne (pseudo-ciecze; fluidyzacja)

Page 8: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

„sztuczne” powiększanie układu.

Elementy układu (cząsteczki) oddziałują ze sobą. Oddziaływaniema określony zasięg. Nawet w przypadku oddziaływań elektro-statycznych (proporcjonalnych do 1/odległość) istnieje taka odleg-łośc, na której energia oddziaływań staje się praktycznie równazero. Zatem od pewnej odległości elementy te (cząsteczki) stająsię niezależne (w sensie statystycznym).

R

R

R

R

R - zasięgoddziaływania

Page 9: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

tzw. periodyczne warunki brzegowe

Page 10: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

periodyczne warunki brzegowe dla danego układusą związane z jego geometrią. Dla przykładu, jeślirozważamy płyn (płyn=(gaz.or.ciecz); płyn=(gaz||ciecz)) wporze szczelinowym (co to znaczy?), to wówczas warunkiperiodyczne jedynie w płaszczyźnie (powiedzmy OXY);dla układu objętościowego - warunki periodyczne w trzechwymiarach.Z warunków periodycznych wynika, że gdy cząsteczkaopuszcza układ z jednej strony, to musi wejść do niego z drugiej

Page 11: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Innymi słowy, jeśli układ (na pł. OXY) jest prostokątem:0 <=x<=XL (x.ge.0).and.(x.le.XL)0<=y<=YL (y.ge.0).and.(y.le.YL)i na początku ruchu cząsteczka była w punkcie x, spełaniającympowyższe warunki, a na końcu ruchu znalazła się w punkciex_koniec> XLto w istocie pojawiła się w punkcie x_koniec1=(x_koniec-XL)!Analogicznie, jeśli x_koniec <0 to w istociex_koniec1=XL+x_koniec

(podobnie w kierunku OY)

Page 12: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

x1,y1 -poczatkowe

przesx,przesy - przesunięcie

OXL=2.0/XLOYL=2.0/YLxk= x1+przesxyk= y1 +przesyxk= xk -XL*aint(OXL*xk -1.)yk= yk -YL*aint(OYL*yk -1.)

xk.yk -końcowe

XL

YL

(0,0)OXL=2.0/XL;OYL=2.0/YL;xk= x1+przesx;yk= y1 +przesy;xk= xk -XL*floor(OXL*xk -1.0);yk= yk -YL*floor(OYL*yk -1.0),

fortran C

Page 13: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

ze wszystkich - wybieramy najbliżej położoną

x1,y1

x2,y2

x2’,y2’

x2’’,y2’’dx=x1-x2dy=y1-y2odl=sqrt(dx*dx+dy*dy)

dx’=x1-x2’dy’=y1-y2’odl’=sqrt(dx’*dx’+dy’*dy’)

dx’’=x1-x2’’dy’’=y1-y2’’odl=sqrt(dx’’*dx’’+dy’’*dy’’)

Z warunkami periodycznymi wiąże się zasada minimalnejodległości oddziaływań (minimum image)

Page 14: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

c** XL, YL - wymiary ukladu xl2=XL/2.0 yl2=YL/2.0 dx=x1-x2 FORTRAN dx=xl2-abs(xl2-abs(dx)) dy=y1-y2 dy=yl2-abs(yl2-abs(dy)) odl1=sqrt(dx*dx+dy*dy)

/* XL, YL - wymiary ukladu*/ xl2=XL/2.0 ; yl2=YL/2.0; dx=x1-x2; C dx=xl2-fabs(xl2-fabs(dx)); dy=y1-y2; dy=yl2-fabs(yl2-fabs(dy)); odl1=sqrt(dx*dx+dy*dy);

Page 15: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Metoda modelowania:1) dynamika molekularna: zalety i wady2) metoda Monte Carlo - równoważność (za wyjątkiem układów nie będących ergodycznymi) średnich czasowych i średnich w zespole statystycznym3) dynamika „brownowska”; układy ze stopniami swobody„działającymi” na różnej skali czasowej

Koncentrować będziemy się na metodach 1) i 2)

Page 16: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

W metodzie Monte Carlo możemy modelować układ wprzestrzeni ciągłej (współrzędne cząsteczek są liczbamirzeczywistymi), lub nieciągłej. W ostatnim przypadkumówimy o tzw. UKŁADACH SIATKOWYCH, awspółrzędne cząsteczek są wówczas liczbami naturalnymi -„numerami” węzłów sieci.

Istnieje też „siatkowy analog” dynamiki molekularnej -tzw. dynamika boltzmannowska.

Page 17: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Zadania do wykonania:wykonanie zadań jest obowiązkowe, niewykonanie 1/3 zadań oznacza brak zaliczenia wykładu. Termin wykonania zadań: 1 tydzień od podania na wykładzie; po tym terminie zadaniaprzyjmowane nie będą. Zadania należy przesyłać pocztą elektroniczną na adres:[email protected]ąc jako temat (TEMAT: BEZ POLSKICH ZNAKÓW!!!)numer zadania (lub zadań, jeśli więcej niż 1), imię i nazwiskoZa błędy popełnione przy wysyłaniu poczty całkowitą odpowie-dzialność ponosi wysyłający, żadne reklamacje przyjmowane niebędą. Pierwszy etap automatycznego sprawdzania polegaćbędzie na eliminacji rozwiązań zgodnych ze sobą w więcej niżw 40%, zgodnie z kryteriami programu PLAGIAT, stosowanymiw UMCS. Ponieważ etap ten jest automatyczny, nie istniejemożliwość reklamacji i odrzucone będą wszystkie prace niespełniające powyższego kryterium.

Page 18: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Zadanie 1odszukaj i podaj (powołując się na źródło) przynajmniej 5 przykładów rozmiarów cząsteczek, traktowanych jak kulki.Odszukaj i podaj (powołując się na źródło) przynajmniej 3przykłady budowy cząsteczek wieloatomowych (średnice atomówlub grup funkcyjnych, odległości pomiędzy nimi, kąty międzywiazaniami, itp.)Odszukaj i podaj (powołując się na źródło) przynajmniej 3 przykłady danych na temat budowy ciał stałych (rodzaj sieci,wielkość komórki elementarnej, itp.)

Zadanie 2Jaka jest struktura (jak są ułożone) kulki na płaszczyźnie, abyich gęstość dwuwymiarowa była największa? Ile wynosi ta gęstość. Ile cząsteczek {azotu lub wody lub argonu lub tlenu lub

rtęci lub metanu lub ksenonu}* znajdzie się na 1 cm2 powierzchni,jeśli tworzą one warstwę najgęściej upakowaną? *jedna cząsteczka do wyboru

Page 19: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Zadanie 3Co to jest moment dipolowy, podaj przykłady i wartości liczbowemomentów dipolowych dla 3 cząsteczek. Dla jakich wzajemnychorientacji energia oddziaływania 2 dipoli jest największa a kiedynajmniejsza? Co to jest moment kwadrupolowy? Podaj 2 przykłady.Dla jakich orientacji a)na płaszczyźnie b)w przestrzeni trójwymiaro-wej energia oddziaływania 2 kwadupoli jest największa?

Zadanie 4Wielkości zredukowane. Podaj przykłady zdefiniowania wielkościzredukowanych w termodynamice. Co możesz powiedzieć natemat zasady stanów odpowiadających sobie i jaki jest jejzwiązek z definiowaniem wielkości zredukowanych?

Zadanie 5.Podaj definicje kątów Eulera. Jak znając np. współrzędne środkamasy oraz kąty Eulera ze środka masy do dowolnego punktu ciałasztywnego, wyliczyć współrzędne kartezjańskie tego punktu?

Page 20: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

ODDZIAŁYWANIA MIĘDZYCZĄSTECZKOWE.

Energia potencjalna (będziemy mówić potencjał) oddziaływańpary cząsteczek w określonej konfiguracji

R1 R2 to różnica energii kwantowego stanupodstawowego dla tej konfiguracjioraz energii stanu, w którym 2 cząsteczkisą nieskończenie od siebie odległe

Obliczenia kwantowe -> aproksymacje, w termodynamicestatystycznej musimy stosować aproksymacje (czas obliczeń!)

Przedstawimy kilka najczęściej stosowanych aproksymacji

Page 21: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

ADDYTYWNOŚĆ (po parach)Jeśli uij jest potencjałem międzycząsteczkowym pomiędzycząsteczkami i oraz j, to energia oddziaływania N cząsteczekjest równa:

Ni

ijNij

N uU,1 ,1

taka sama zasada dotyczy obliczania energii oddziaływania 2cząsteczek, zbudowanych z wielu atomów (grup atomów - grupfunkcyjnych). Energia 2 takich cząsteczek jest sumą energii wszystkich oddziałujących centrów (grup). Centraenergetyczne nie muszą być realnymi atomami. Np. energiadipol-dipol może być wyznaczona jako suma oddziaływań

kulombowskich pomiędzy 4 (niekoniecznie całkowitymi) ładunkami:

Page 22: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

-+

-+

q+

q-

q-

q+

q-q+/r1

r1

-+

w modelu cząsteczli wody ładunek +może być umieszczony pomiedzydwoma wodorami, w miejscugdzie „fizycznie” nie ma żadnego atomu

Page 23: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Potencjał Lennard-Jonesa

612 )/()/(4)( rrru

parametry: energii i wielkości, sigma to tzw. średnica Lennard-Jonesa. Ponieważ we wszystkich wyrażeniach termodynamicznychepsilon występuje jako epsilon/kB (stała Boltzmanna), to zazwyczajpodajemy wartość tego parametru jako epsilon/kB . Wówczasjednostką tej wielkości jest TEMPERATURA.Potencjał Lennard-Jonesa jest dwuparametrowy; wielkości sigma i epsilon mogą być więc użyte jako jednostki długości i energii - a więcdo definiowania wielkości zredukowanych, np.gestosc_zredukowana=gestosc*sigma**3temperatura_zredukowana=kB*temperatura/epsiloncisnienie_zredukowane=cisnienie*sigma**3/epsilonenergia_wewnetrzna_zredukowana=energia_wewnetrzna/epsilon, itd.

Page 24: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

r/sigma

u( r)/epsilon

sigma

force

rcut

u(rcut)=ucut

Page 25: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Funkcja wyznaczająca potencjał LJ w jednostkach zredukowanych double lj(r,rmin,emax)

double r,rmin,emax; {double r,r3,r6;{ if (r<=rmin); return(emax);}else{ r3=1.0/r; r3=r3*r3*r3;r6=r3*r3;r3=4*r6*(r6-1.0);}return(r3);}

real*8 function lj(r,rmin,emax) implicit nonereal*8 r,r6if (r.le.rmin) thenlj=emaxelser6=(1.d0/r)**6lj=4*r6*(r6-1.d0)endifreturnend

Uwaga: dlaczego rmin oraz emax? Jak je określić?

Page 26: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

oddziaływanie z powierzchnią - na bazie potencjału LJ

OXY

OZ

dx*dy

r

x1,x1,z1

z1

222 )1()1(1()1( yyxxzdyudxzv

Page 27: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

całkujemy na całą płaszczyznę, od minus do plus nieskończonościPrzechodzimy na współrzędne walcowe

R2=(x1-x)2+(y1-y)2; RdRd=dxdy

14

6

10

12

222

22

222

4

1

10

12)(2)1(

,1

;)1(2

)1()1(1()1(

z rrrrdruzv

rdRRdRrRz

RzRdRu

yyxxzdyudxzv

Potencjał Lennard-Jonesa (10,4), opisujący oddziaływania zpłaszczyzną

Page 28: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Inne modele potencjałów oddziaływa ń pary cząsteczek sferycznych(PARY CZĄSTECZEK, A NIE CZĄSTECZKI Z POWIERZCHNIA)

2) Potencjał Yukawy

rdla

rdla

rrru

/]/exp[)(

3) potencjał sztywnych kul (BYŁO!)

Kiedy stosujemy te potencjały?

Page 29: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Jakie zadania mogą być z tego materiału na kolokwium?Np. (a) przy wyznaczaniu potencjału oddziaływań z powierzchniąprzeprowadzić analogiczne całkowanie dla potencjału Yukawy, napisać odpowiedni program, wykonać wykres. Całkowaniemożna przeprowadzić numerycznie(b) wyznaczyć numerycznie potencjał oddziaływania cząsteczkize sferyczna cząsteczka koloidalną (całkowanie nie po płaszczyżnie,ale po powierzchni kuli)c ) jak wyżej, ale „w srodku” kuli, tj. wewnątrz poru sferycznegolub cylindrycznegod) wyznaczyć analog potencjału LJ(10,4), jeśli uwzględnimy, żeoddziaływanie zachodzi również z elementami wewnątrz ciałastałegoe) wyznaczyć numerycznie drugi współczynnik wirialny dlapotencjału LJ(12,6)f) wyznaczyć numerycznie wartość stałej Henry’ego dla potencjału LJ(10,4).

Page 30: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Zadania do wykonaniaZadanie 6Jaką postać ma potencjał opisujacy oddziaływania pomiędzy dwomaidealnymi (punktowymi) dipolami? Napisz funkcje obliczającą tenpotencjał. Zadanie 7Jaką postać ma potencjał opisujacy oddziaływania pomiędzy dwomaidealnymi kwadrupolami ? Napisz funkcje obliczającą tenpotencjał.Zadanie 8Oddziaływania pomiędzy dwoma cząsteczkami koloidalnymiw roztworze atermalnym można opisać przy pomocy potencjaługaussowskiego (tzw. Gaussian overlap potential) lub AsekuryOozawy. Jaką postać ma jeden lub drugi potencjał. Napisz odpowiednią funkcję. lub - do wyboru

2 tygodnie od 24 lutego

Page 31: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

DYNAMIKA MOLEKULARNA - UKŁADY OBJĘTOŚCIOWE(bez pól zewnętrznych)

u(rij)

ri

rj

i

j ri=(xi,yi,zi), uij=u(rij)ri=(xi,yi,zi); uij=u(rij)

Ni

ijNij

N uU,1 ,1

rij=sqrt(dx2+dy2+dz2)dx=min_image(xi-xj)dy=min_image(yi-yj)dz=min_image(zi-zj)

Notacja: matematyczna i „komputerowa”N cząstek

rj’

Page 32: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

un=suma(N,uij), un jest funkcją położeń wszystkich N cząsteczek

Siła działająca na i-tą cząsteczkę jest sumą sił od wszystkichpozostałych N-1 cząsteczek. Równania ruchu -klasycznadynamika Newtona (przestrzeń trójwymiarowa, czasteczkisferyczne): siła=masa*przyspieszeniesiła_na cząsteczkę_i=masa_i*przyspieszenie_iprzyspieszenie_i=(druga_pochodna_drogi_i_po_czasie)siła_i= - (gradient_potencjału_działającego_na_i)gradient=(/x, /y, /z)

22

22

22

//

//

//

tzmxU

tymyU

txmxU

iiiN

iiiN

iiiN

-fxi=mi*d2xidt2

-fyi=mi*d2yidt2

-fzi=mi*d2zidt2

Page 33: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

ijNjxijxi

iijxij

iijNjijxi

fF

xuf

xuFfxi

,,1

;,1

/

/

Dla potencjału LJ(12,6)

ij

ji

ijij

iij

r

zz

rr

xu

)(1264

/

13

12

7

6

dx=x(i)-x(j)dy=y(i)-y(j) dz=z(i)-z(j) dx=dx-XL*nint(dx/XL) dy=dy-YL*nint(dy/YL) dz=dz-ZL*nint(dz/ZL) rsq=dx**2+dz**2+dy**2 robol=(sigma**6/rsq**4) robol1=(sigma**12/rsq**7) robol=6.d0*robol-12.d0*robol1fxij=4.d0*epsilon*robol*dz

nint, sumowanie, ij<-> ij

Page 34: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

2

222

)()(

)()(2)(

)(

)()(2)(/

tm

tFttxtxttx

t

ttxtxttxdtxd

i

xiii

iiii

Algorytm Stroemera-Verleta. Inne algorytmy:

M.P.Allen, D.J. Tildesley, Computer Simulation of Liquids, Claredon,Oxford 1982 (szukaj w sieci hasła: ccp5, na stronie odszukać program library)D.J. Evans, G.P. Morriss, Statistical Mechanics of NonequilibriumLiquids, Academic Press, London 1990

Page 35: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Schemat blokowy symulacji:

1. wczytaj dane początkowe (wielkość układu, N, parametry potencjału, wielkość kroku czasowego delta_t, jak długo mają trwać symulacje, KONFIGURACJĘ POCZĄTKOWĄ)

2. Dla każdej cząsteczki oblicz siły fxij,fyij,fzij3. Dla każdej cząsteczki rozwiąż numerycznie równania Newtona, obliczając jej nowe położenie4. Oblicz wielkości termodynamiczne, dynamiczne oraz charakteryzujące strukturę, które chcesz obliczać i których wartość średnią (uśrednioną po krokach symulacji) będziesz drukować

5. wydrukuj wyniki (wielkości średnie, konfigurację końcową)powtarzaj

Page 36: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

A CO Z TEMPERATURĄ?

Zasada ekwipartycji energii: w stanie równowagi wartość średnia energii kinetycznej wynosi (1/2)NkT na każdy stopień swobody, a więc:

hsymulacjac po,1

222

2

)(

2

3

Ni

ziyixii vvvmNkT

a co to prędkość vxi, vyi, vzi? do przecież pochodna xi po czasie, czyli vxi=(xi(t+delta_t)-xi (t))/delta_t

Page 37: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Problemy do przypomnienia/uzupełnienia:numeryczne rozwiązywanie równań różniczkowych rzędudrugiego, zwłaszcza metoda „predictor-corrector” orazmetoda „leap frogg” - źródło: odszukać na sieci numerical recipes, pobrać pliki PDF (języki FORTRAN lub C)

DYNAMIKA MOLEKULARNA - ZESPÓŁMIKROKANONICZNY

(a co to jest zespół mikrokanoniczny?)

Page 38: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Omówimy dokładniej program pozwalający na obliczanietrajektorii ruchu cząsteczek metoda dynamiki molekularnejProgram napisany jest przy pomocy meta-języka. Programgłówny wygląda następująco:

program md

call init

t=0

do while(t<=tmax)

call force

call integrate

t=t+deltat

call sample

enddo

call results

end

program główny

inicjujemy dane, pkt 1zaczynamy, czas=0, krok czasowy=deltapoczątek pętli po czasieobliczamy siłycałkujemy równania ruchuczas=czas_stary+deltaobliczamy średnie, które nas interesują

koniec pętli czasowejwypisujemy wyniki

Page 39: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

We wszystkich blokach programowych niżej rozpatrujesię jedynie JEDNĄ wspólrzedna - x; Jeśli układ jestdwuwymiarowy - trzeba odpowiednio dodać y; dlaukładu trójwymiarowego - również wsp. z.Oczywistym jest, że odległości liczymy zawsze jakodługości odpowiednich wektorówr2=dx*dx - układ jednowymiarowyr2=dx*dx+dy*dy - układ dwuwymiarowyr2=dz*dz+dy*dy+dz*dz - układ trójwymiarowy

Page 40: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

procedure initsymv=0

sumv2=0

for i=1,n_czastek

x(i)=polożenie_na_sieci_i

v(i)=(random-0.5)

sumv=sumv+v(i)

sumv2=sumv2+v(i)*v(i)endforsumv=sumv/n_czasteksumv2=sumv2/n_czastekfs=sqrt(3*temp/sumv2)for i=1,n_czastekv(i)=(v(i)-sumv)*fsendforend_procedure

bardzo ważne,inaczej układby dryfował, sumv2 - skalowanieprędkości do temperatury

położenia na sieciprzypadkowe prędkościZACHOWANIE PĘDU!TEMPERATURA

pętla skalująca prędkosci, zerowypadkowego pędu, układ mazadana temperaturę

RÓWNOWAGOWANIE

Page 41: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

UWAGAjeśli stosować będziemy algorytm Verleta, to w miejscu strzałki należy dodaćxm(i)=x(i)-v(i)*deltat, gdzie deltat jest krokiem czasu

do obliczenia położeń w czasie t+deltat algrorytm ten wymaga znajomosci położeń w czasie t oraz w czasie t-deltat. Te ostatnie „przybliżamy”, zakładając ruchjednostajny w czasie deltat, czyli:polożenie_stare=polożenie_aktualne-predkość*deltat

Page 42: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

SIEĆ, układ 2-wymiarowy

a

nsqr=sqrt(n_czastek)for i=1,nsqrx(i)=(i-1)*afor j=1,nsqry(j)=(j-1)*aendforendfor

jeśli na tych bokach są

to na tych bokach być nie mogą

periodyczne war. brzegowe!

Page 43: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

2

2’

a1

1 - (0,0)2 - (1,0)3 - (3,0)itd..

2-warstwa:1’ -(0.5, sqrt(3)/2)2’ - (1.5,sqrt(3)/2)idt..

3-wartstwa1’’ - (0, sqrt(3))2’’- (1,sqrt(3))

3

1’

sieć heksagonalnaa - jednostka

A jak wyglądają tuwarunki periodyczne??

cząsteczka następnej warstwy(wzdłuż osi OZ, prostopadłejdo płaszczyzny rys.

Page 44: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

1 2

3

4

1. wstawiamymy 1

2. wstawiamy 2, aby r12>a

3. wstawiamy 3, aby r21,r32>a

4. wstawiamy 4, aby r41,r42,r42>a.

itd..

Ale: sprawdzać należy

stosując periodyczne warunki

brzegowe!

Przypadkowe wstawianie

Page 45: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Zadanie 9Co to jest rozkład prędkości Maxwella-Boltzmanna? Dlaczegow procedurze inicjującej nie losujemy prędkości zgodnie z tym rozkładem?Zadanie 10Napisz procedurę inicjującą dla układu dwu lub trójwymiarowego,losując położenia cząsteczek na sieci kwadratowej (sześciennej) lub najgęstszego upakowania lub przypadkowo. Język:fortran lub c

Page 46: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Procedura forceJeśli algorytm symulacji działa poprawnie, to cząsteczki nie mogą„za bardzo” zbliżyć się do siebie, nie ma więc potrzeby wprowadzania parametru „rmin”. Natomiast zazwyczaj układjest większy niż (zasięg korelacji)*2, dlatego wprowadzamyparametr rcutwartość potencjału LJ(12,6) w pkt. rcut toucut=4*(1.0/rcut12-1.0/rcut6), PAMIETAJ: epsilon i sigmapotencjału LJ(12,6) to nasze JEDNOSTKI

W istocie potencjał LJ(12,6) w jest NIECIĄGŁY w rcut, bodo r>rcut u(r )=0, ale ucut jest różne od zera. To oznacza,że również jego pochodna du( r)/dr na DODATKOWY „wkład”w r=rcut. Jeśli funkcja w danym punkcie ma „schodek”, topochodna w tym punkcie ma człon z funkcją delta Diraca!Ten człon jest mały (tym mniejszy, im rcut większe) i dla uproszcze-nia będziemy go pomijać. W dokładnych obliczeniach należy gouwzględniać

Page 47: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

procedure forceenergia=0for i=1,n_czastekf(i)=0endforfor i=1,n_czastek for j=i+1,n_czastek dx=x(i)-x(j) dx=dx-XL*nint(dx/XL) r2=dx*dx if (r2<rcut*rcut) then r2i=1.0/r2 r6i=r2i*r2i*r2i ff=48.0*r2i*r6i*(r6i-0.5) f(i)=f(i)+ff*dx f(j)=f(j)-ff*dx energia=energia+4*r6i*(r6i-1)-ucut end ifendfor i endfor j end procedure

zerujemy energię i siły f dla n_cza

stek

jeśli cząstka i działa na j, to j dzia-

ła na i taka sama siła, ale

z przeciwnym zwrotem

periodyczne war. brzegowe,

nint - to najbliższ całkowita

sumujemy siły od wszystkich

cąstecek

sumujemy energię (minus ucut!)

to jest „odległość do kwadratu”

Page 48: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Zadanie 10Układ cząsteczek oddziałujących potencjałem LJ(12,6) jestw kontakcie z powierzchnią (płaszczyzna OXY). Powierzchniata jest nieruchoma i oddziałuje na cząsteczki układu potencjałem v(z) opisanym funkcja LJ(10,4). Napisz równania na siływynikające z tych oddziaływań. Zmodyfikuj tak proceduręforce, aby poprawnie obliczała siły.

UWAGA: w takim układzie NIE MA PERIODYCZNYCHWARUNKÓW BRZEGOWYCH W KIERUNKU Z; aby byćkonsekwentnym, należy również umieścić symetrycznie takąsamą powierzchnie w z=ZL i uczynić ZL dużo większym niżpozostałe wymiary układu: XL i YL

Page 49: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Zadanie 11Właściwości funkcji delta Diraca: definicja, całkowanietej funkcji, obliczanie pochodnej tej funkcji. Funkcja Diracato analog delty Kroneckera w przestrzeni liczb rzeczywistych

Źródło: np. uzupełnienia matematyczne w MechaniceKwantowej Davydova (Dawidowa, jest po polsku)

Page 50: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Całkowanie równań ruchu

procedure integratesumv=0sumv2=0for i=1,n_czastekxx=2*x(i)-xm(i)*deltat+deltat*deltat*f(i)vi=(xx-xm(i))/(2*deltat)sumv=sumv+visumv2=sumv2+vi*vixm(i)=x(i)x(i)=xx

endfor

temp=sumv2/(2*n_czastek)

etot=(energia+sumv2)/(2*n_czastek)

end procedure

sumv - sprawdzenie „dryfowania”

zasada zachowania pędu, sumv2 -

do obliczenia temperatury

równania ruchu całkowane zgod-

nie z równaniami na następnym

slajdzie

całkowita energia, energia pot.

(energia) liczona w force

Page 51: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

calkowanie równań ruchu:x(t+teltat)=x(t)+v(t)*deltat+f(t)*deltat*deltat/(2*masa)+O(deltat^3)x(t-deltat)=x(t)vv(t)*deltat+f(t)*deltat*deltat/(2*masa)+O(deltat^3)dodając stronami:x(t+deltat)+x(t-deltat)=2*x(t)+f(t)*deltat*deltat/masa lubx(t+deltat)= - x(t-deltat)=2*x(t)+f(t)*deltat*deltat/masa

podobnie postępując z prędkością otrzymamy:

v(t)=(t(t+deltat)-t(t-deltat))/(2*deltat)

powyższe równania zastosowano w procedurzeintegrate

Page 52: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

RÓWNOWAGOWANIE:

ENEGRGIA lub TEMPERATURA

kroki czasu

podczas równowagowania musimy„uzgodnić” siły z prędkościami.Zaczynamy symulacje od przypad-kowych prędkosci, ich rozkładnie jest zgodny z rozkłademMB. Równowagowanie - to osiągniecie tej zgodności. Dlategoteż podczas równowagowanianależy (w procedurze integrate)dopisać linie z proceduryinicjalizacji

procedura inicjalizacji

Page 53: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Zadanie 12Napisz (albo w meta-języku, albo w dowolnym języku programo-wania) analog procedury integrate dla równowagowaniaukładu.

Page 54: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Uwagi podsumowujące:Najprostszy układ: całkowicie izolowany, bez pól zewnętrznych,siły krótkiego zasięgu, cząsteczki sferyczne. W przypadkucząsteczek niesferycznych - dodatkowe równania ruchu, np.dla rotacji,

Średnia energia (kinetyczna) rotacji - związekz temperaturą.

Równowagowanie termiczne - rotacja i translacja „razem” czyoddzielnie?

Reakcje chemiczne, np. asocjacja, tworzenie wiązań typuwiązania wodorowego

Page 55: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Uzupełnienia (samodzielnie, nieobowiązkowo)

Inne metody całkowania równań ruchu (inne wersjeprocedury inegrate)

Równania Liouville’a, zagadnienie odwracalności w czasiedanego algorytmu. Niestabilność Lapunowa.

Page 56: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Co chcemy liczyć - czyli procedura sample1. Wielkości termodynamiczne (T, energia, potencjał chemiczny, ciśnienie (albo ugólniej: składowe tensora ciśnienia (naprężeń), a więc i napiecie powierzchniowe, napięcie liniowe), swobodna energia Helmholtza, ciepło własciwe...2. Wielkości dynamiczne, np. współczynnik dyfuzji, czas „życia” powstających kompleksów...3. Wielkości strukturalne: funkcje korelacji (gęstość lokalna, radialna funkcja rozkładu, liczby koordynacyjne, niezmienniki (inwarianty) strukturalne

+

histogramy

Page 57: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

FUNKCJA RADIALNA

Page 58: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

odległość

g(r)

1

Page 59: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

prawdopodobieństwo znalezienia innej cząsteczki na odległościr12 od pierwszej cząsteczki (jakakolwiek pierwsza, jakakolwiek„inna”) - dwucząsteczkowa funkcja rozkładu, n2(x1,y,z1,x2,y2,z2)Periodyczne warunki brzegowe Układ objętościowy -> n2(x1,y,z1,x2,y2,z2=n2(r12)Układ idealny (brak oddziaływań - cząsteczki nieskorelowane)n2(r12)=n2g2(r12), n-gęstość, g2(r12) - funkcja radialnaZatem dla układu bez oddziaływań -> g2(r12)=1jeśli r12-> nieskończoność, to brak oddziaływań, czylig2(r12)->1Zatem jeśli obowiązuje zasada addytywności po parach, totermodynamikę określa funkcja radialna, np.

średnia energia wewnętrzna=energia kinetyczna+energiapotencjalna

Page 60: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Energia kinetyczna - z zasady ekwipartycji, tj. ze średniejtemperatury

Energia potencjalna (w 3 wymiarach):

max

012

21212122

2 )()(42

1r

drrrurgnU

gdzie potencjał u(r12) pod całka jest np. potencjałem LJ(12,6);rmax jest zasięgiem oddziaływań.

Wykażemy dalej, że również ciśnienie oblicza się z funkcji radialnej

(patrz zadanie 13)

Page 61: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Dalej: liczby koordynacji oblicza się jako całki z funkcji radialnej. Jeśli pierwsza „strefa” koordynacji to zasięgminimum oddziaływania LJ(12,6) (r=(21/6)*sigma)to liczba ta wynosi

6/12

012

212122 )(4 drrrg

Funkcja radialna określa nam prawdopodobieństwo znalezieniapary (jakichkolwiek) cząsteczek na odległości r

Page 62: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

procedure radial

if(iradial) then {ileradial=ileradial+1for i=1,n_czastek-1for j=i+1,n_czastekdx=x(i)-x(j)dx=dx-XL*nint(dx/XL)r=sqrt(dz*dz)if(r>BOX/2) then {ir=int(r/step)g(ir)=g(ir)+1}}end procedureZmienne: procedura wywoływanabyć powinna po kroku równowag.wtedy iradial=prawda, przeciwnieiradial=fałsz. step to krok z jakimtablicujemy funkcje radialną, g(ir), zaś mox to min(XL,Yl,ZL)

zazwyczaj step jest rzędu od 0.01

do 0.05 średnic cząsteczek. Tablicag(r ) powinna być tak zadeklarowana, aby 0<=r<=BOX/2

Do wyliczenia średnich wartościg(ir) na końcu symulacji musimywiedzieć ile razy obliczaliśmyfunkcję radialną!, dlatego teżzmienna ileradial powinna byćwyzerowana na początkuprogramu głównego

Page 63: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Wydruk funkcji radialnej

gestosc=n_czastek/(XL*YL*ZL)

for i=0,int(BOIX/step)

r=(i+0.5)*step

oblicz_volume

g(i)=g(i)/(ileradial*gestosc*volume

* n_czastek)

print r,g(i)

endfor

Oczywiście, w 2 wymiarach

gestosc=n_czastel/(XL*YL)

oblicz_volume oblicza

objętość (lub pole dla 2 wym.)

pomiedzy sferami i+1 a i

volume=(4/3)*pi*((r(i+1))3-(ri)3)

lub

volume=2*pi*((r(i+1))2-(ri)2)

ri=i*step

Page 64: UKŁAD   MODELOWANIE PROCESÓW FIZYKOCHEMICZNYCH 1) czym się  nie będziemy zajmować

Zadanie 13Zakładając, że funkcja radialna dana jest wyrażeniem g2(r )=exp[-u( r)/kB T}, gdzie T jest temperaturą, kB - stała Boltzma- nna a u( r) - potencjałem LJ, napisz program wyznaczający średnią wartość energii potencjalnej z równania

Obliczenia przeprowadź w 2 lub 3 wymiarach

Zadanie 14.Wykaż, że jeżeli wyrażenie na swobodną energię Helmholtza(lub równanie stanu) dane są równaniem wirialnym, kończącym się na 2 współczynniku wirialnym, to jest to jednoznaczne z założeniem, że funkcja radialna dana jaest wyrażeniem g2(r )=exp[-u( r)/kB T}