Phương pháp nghiên cứu

Một phần của tài liệu Mô phỏng ba chiều sự phát triển màng có cấu trúc perovskite của batio3 bằng phương pháp động học monte carlo (Trang 32 - 106)

Matlab là một ngôn ngữ lập trình cấp cao dạng thông dịch, nó là môi trường tính toán số được thiết kế bởi công ty MathWorks. Matlab cho phép thực hiện các phép tính toán số, ma trận, vẽđồ thị hàm số hay biểu diễn thông tin (dưới dạng 2D hay 3D), thực hiện các thuật toán và giao tiếp với các chương trình của các ngôn ngữ khác một cách dễ dàng.

Do vậy, để thực hiện khóa luận này chúng tôi dùng phần mềm Matlap R2009a và lý thuyết mô phỏng động học Monter Carlo.

CHƯƠNG 2

THUT TOÁN MONTE CARLO

Để mô phỏng 3 chiều quá trình tạo màng có cấu trúc perovskite, chúng tôi chủ yếu tập trung vào 2 sự kiện chính trong quá trình tạo màng là quá trình lắng

đọng và quá trình khuếch tán. Trong đó, quan trọng nhất là thế tương tác của hạt với các hạt xung quanh, bởi vì ảnh hưởng đến xác xuất dịch chuyển của các hạt theo các hướng khác nhau. Ở đây chúng tôi sử dụng thế Born–Mayer–Huggins (BMH) để

tính thế năng tương tác của các hạt trong cấu trúc perovskite, thế này được rất nhiều các tác giả trên thế giới áp dụng và cho kết quả phù hợp tốt [55], đặc biệt là áp dụng

để tính thế tương tác của nhiều hạt khác nhau.

2.1 Thế tương tác gia các ht

Trong quá trình lắng đọng cũng như khuếch tán, các hạt sẽ tương tác với nhau. Để tính toán thế năng tương tác đó, chúng tôi sử dụng thế Born–Mayer– Huggins (BMH) . Thế gồm 3 thành phần thứ nhất, thứ 2 thứ 3 lần lượt đặc trưng cho lực tương tác ngắn, tương tác coublom và tương tác dipole lưỡng cực.

1 6 ( ) exp( ) ij i j r V r A q q r Cr ρ − − = − + + ( 2.1)

Với A, ρ, C là các thông số BMH, q q0, mlà điện tích của ion và r là khoảng cách giữa 2 hạt tại vị trí 0 và vị trí m. Khi đó, tổng thế tương tác của hạt tại vị trí 0 là: 1 m ij ij E = Σ V ( 2.2)

2.2 Quá trình lng đọng

Khi chọn được một vị trí khả dĩ, chương trình sẽ cho hạt lắng đọng vuông góc với bề mặt đế. Do tỉ lệ các hạt trong BaTiO3 là Ba:Ti:O = 1:1:3 nên để mô phỏng cấu trúc chúng tôi cho tổng số hạt lắng đọng mỗi loại trên đế cũng tuân theo tỉ lệ trên.

2.2.1 Thông lượng lắng đọng

Trong quá trình lắng đọng, chúng tôi cho hạt lắng đọng trên màng với một thông lượng Faver (số hạt/s hay sốđơn lớp/s, ML/s), thời gian mỗi xung lắng đọng tp. Khi đó, trong một xung sẽ có Faver nguyên tử lắng đọng trên đế và sẽ không có nguyên tử nào lắng đọng trong khoảng thời gian giữa 2 xung.

2.2.2 Tính năng lượng của hạt sau khi lắng đọng

Chúng tôi giả sử năng lượng lắng đọng của các hạt trên đế là như nhau Ek. Trong quá trình lắng đọng nguyên tử sẽ tương tác với đế Es , với các hạt xung quanh Et và với các vị trí sai hỏng Eb. Khi đó, năng lượng còn lại của hạt sau khi lắng đọng là: ' k k b s ij E = EEEE ( 2.3) Với Eijđược xác định từ công thức ( 2.2) 2.3 Quá trình khuếch tán

Trong quá trình khuếch tán, nguyên tử tại vị trí (x0, y0, z0) có thể đi chuyển sang các vị trí lân cận theo từng bước. Tùy vào từng mô hình mà chúng ta cho hạt dịch chuyển qua các hướng khác nhau.

Tần số nhảy của hạt theo hướng i là :

0exp[ ( ) / ]

i E k TB

υ υ= − ∆ ( 2.4)

Với υ0 =2k T hB / là tần số dao động của nguyên tử khuếch tán, kB là hằng số

Năng lượng khuếch tán ∆Ecủa hạt là:

B k

E E E

∆ = − ( 2.5)

EB là năng lượng cần thiết để nguyên tử khuếch tán sang vị trí lân cận và Ek năng lượng của hạt.

Xác suất để hạt dịch theo một hướng nào đó là

i i i v P v = ∑ ( 2.6) (adsbygoogle = window.adsbygoogle || []).push({});

Thời gian cho một dịch bước chuyển 1 i i t P = ( 2.7)

Khi hạt khuếch tán sang vị trí lân cận thì năng lượng còn lại của hạt là '

k E : ' ( ) ( ) 0 k B k B k k B E E E E E E E − >  =  ≤  ( 2.8)

Năng lượng cần thiết để nguyên tử khuếch tán sang vị trí lân cận.

EB =ED +ES ( 2.9)

Es là năng lượng liên kết của hạt với đế, và ED là hiệu năng lượng của vị trí khuếch tán và vị trí hiện tại của hạt.

Khi nguyên tử khuếch tán từ lớp trên xuống lớp dưới, thì năng lượng hao hụt thêm một lượng EES (thế Ehrlich–Schwoebel). Thế EBđược viết lại:

ES

EB =ED +ES +E ( 2.10) Hiệu năng lượng của hạt khuếch tán khi dịch chuyển từ vị trí (i,j) sang vị trí (i’,j’):

' '

ED =Ei jEij ( 2.11)

2.4 Độ dài khuếch tán

Chúng ta biết trong quá trình tạo màng, ngoài việc khuếch tán của hạt theo năng lượng tới, nguyên tử còn chịu ảnh hưởng rất nhiều bởi nhiệt độ đế. Do vậy, để

cho quá trình khuếch tán phù hợp với thực tế hơn, chúng tôi đưa đại lượng hệ số

khuếch tán vào trong quá trình mô phỏng quá trình khuếch tán tạo màng [2].

s

a K t

Λ = ( 2.12)

Với Ks =υ0exp[Ec /k TB ] là tần số nhảy của hạt dưới hấp thụ hóa học tại nhiệt độ đế T, Ec là năng lượng hấp thụ hóa học, t là thời gian phủ màng, a là thông số mạng.

Đại lượng này cho biết độ dài khuếch tán tối đa mà nguyên tử có thể dịch chuyển với nhiệt độđế T và thời gian phủ màng t.

CHƯƠNG 3

MÔ PHNG ĐỘNG HC MONTE CARLO CHO MÀNG CÓ CU TRÚC PEROVSKITE (BaTiO3)

Chương trình mô phỏng được chia thành 3 phần chính (hình 3.1) 1. Phần 1: Nhập các số liệu đầu vào và khởi tạo các mảng,

2. Phần 2: Động học Monte Carlo (quá trình lắng đọng và khuếch tán) 3. Phần 3: Xuất kết quả.

Trong 3 phần thì phần 2 là phần cốt lõi của chương trình bao gồm cả 2 quá trình lắng đọng và khuếch tán.

Việc chọn sự kiện là lắng đọng hay khuếch tán phụ thuộc thời gian của xung tp và ma trận khuếch tán B.

Sự kiện lắng đọng sẽ được chọn khi tổng thời gian khuếch tán của các hạt bằng tp hoặc khi tất cả các hạt khuếch tán đều ngừng (ma trận B rỗng).

Khi thời gian nhỏ hơn tp thì quá trình khuếch tán được chọn, khi đó chương trình sẽ chọn ngẫu nhiên một hạt trong ma trận B và thực hiện quá trình khuếch tán.

Chương trình sẽ dừng khi tổng số các hạt đã lắng đọng hết và các hạt đã ngừng khuếch tán

dkd=0; % dieu kien dung while dkd==0 %% Chon su kien sizeB=size(B); sizeB(2) if timexung>=tp && N>0 timexung=0; (adsbygoogle = window.adsbygoogle || []).push({});

if N>Faver for i=1:Faver qtlangdong; end N=N-Faver; else for i=1:N qtlangdong; end N=0; end else if sizeB(2)~=0 [timestep]=qtkhuechtan; timexung=timexung+timestep; else if N<=0 dkd=1; else timexung=tp+1; end end end end

3.1 Nhp d liu và tính toán các thông s3.1.1 Các thông số cần nhập 3.1.1 Các thông số cần nhập + Hằng số Boltzmann’s: kB=8.617385*10^-5 eV/K + Bán kính hạt Ba: 0.161nm + Bán kính hạt Ti: 0.0605nm + Bán kính hạt O: 0.135nm + Thế Ehrlich-Schwoebel: EES = 0.1 eV [55] + Năng lượng tương tác của hạt với đế: Es = 1.2 eV [55]

+ Năng lượng tương tác của hạt với các vị trí sai hỏng: Eb = 0.25 eV + Nhập không gian mô phỏng L

+ Nhập số hạt mô phỏng N

+ Nhập thông lượng trung bình Faver + Nhập độ dài xung tp =1.0 x 10-5s + Nhập phần trăm các vị trí sai hỏng p. + Nhập nhiệt độđế T

+ Nhập thời gian mô phỏng t + Nhập năng lượng tới của hạt Ere

3.1.2 Tính toán các thông số cần thiết

+ Tính hằng số vận tốc 2 0 3 34 1.38 10 6, 625 10 2k TB 2 T h ν × −− × × × = = ( 3.1) + Tính thông số mạng của màng a: 2( ) A O B O r r t r r + = + ( 3.2)

Khi đó, tùy vào giá trị của t mà thông số mạng a của màng được tính theo các công thức ( 1.8), ( 1.9) hay ( 1.10).

+ Tính độ dài khuếch tán: sử dụng công thức ( 2.12) với giá trị a là thông số mạng, Kc = 1.8 eV và nhiệt độđế T, thời gian mô phỏng t.

3.1.3 Khởi tạo các mảng:

Mảng A: Lưu tất cả các vị trí mà hạt có thể chiếm.

Giá trị khởi tạo ban đầu là L x L x H vị trí, với L là kích thước đế

và H là độ cao tối đa của màng trong quá trình lắng đọng. Khi lắng

đọng và khuếch tán giá trị của L và H sẽ thay đổi để tất cả các hạt có thể lắng đọng và khuếch tán tự do trên màng mà không phải áp dụng bất kỳ và điều kiện biên nào.

Hàng 1, 2, 3 lưu tọa độ x, y, z của hạt. Giá trị A(x,y,z) là lưu thông tin loại hạt. A = 1 hạt là Ba, A = 2 hạt là Ti, A = 3 hạt là O

Mảng B: Lưu toàn bộ thông tin của các hạt khuếch tán. Số cột B là số hạt đang khuếch tán

Hàng 1, 2, 3 lưu vị trí của các hạt đang khuếch tán. Hàng 4: năng lượng của hạt.

Hàng 5: lưu độ dài khuếch tán của hạt.

Mảng C: lưu toàn bộ thông tin của hạt ngừng khuếch tán. Hàng 1, 2, 3 lưu vị trí của các hạt ngừng khuếch tán.

Mảng D: Lưu vị trí các sai hỏng

Hàng 1, 2, 3 lưu vị trí của các sai hỏng.

3.1.4 Khởi tạo các các vị trí sai hỏng

Các sai hỏng trên bề mặt đế ảnh hưởng rất lớn đến quá trình tạo màng, Đặc biệt là trong quá trình hình thành và kết đảo của màng. Do vậy, chúng tôi cũng đưa thông số sai hỏng màng vào trong quá trình mô phỏng màng có cấu trúc perovskite. Chương trình sẽ tạo ngẫu nhiên các vị trí sai hỏng trên màng với tỉ lệ phần trăm đã nhập p. Năng lượng tương tác của các hạt với vị trí sai hỏng là Eb = 0.25eV. Trong

quá trình lắng đọng cũng như trong quá trình khuếch tán, cứ một lần tương tác với vị trí sai hỏng năng lượng của hạt sẽ giảm đi một lượng Eb.

Số sai hỏng trên bề mặt đế: 2 sh N = ×p L ( 3.3) 3.2 Quá trình lng đọng 3.2.1 Chọn hạt lắng đọng và tìm vị trí lắng đọng cho hạt:

Trong một xung thời gian thì chương trình sẽ cho một lượng Faver nguyên tử

với tỉ lệ Ba:Ti:O = 1:1:3 lắng đọng trên màng. Các hạt này được xem như là lắng

đọng cùng lúc lên màng. Khi một hạt được chọn để lắng đọng, chương trình sẽ chọn ngẫu nhiên tọa độ trên mặt phẳng đế (xo, yo), sau đó sẽ chọn vị trí khả dĩ zo cao nhất mà chưa có hạt chiếm. Khi đó, vị trí lắng đọng trên đế là (xo, yo, zo).

3.2.2 Tính tổng năng lượng tương tác của hạt với đế và các hạt đã lắng đọng trước đó (adsbygoogle = window.adsbygoogle || []).push({});

Sau khi lắng đọng, chương trình tính toán năng lượng tương tác của nguyên tử với đế Es và với các nguyên tửđã lắng đọng trước đó Eij. Giá trị Eij được xác định từ ( 2.1) và ( 2.2). 1 6 ( ) exp( ) ij i j r V r A q q r Cr ρ − − = − + + ( 3.4)

Các thông số A, ρ, C của BaTiO3được cho ở bảng 3.1.

Trong cấu trúc perovskite của BaTiO3 tất cả các cặp đều có tương tác coulomb với nhau nhưng chỉ có 3 cặp O2−- O2−, Ti4+- O2− và Ba2+- O2−, là có tác dụng lực tương tác ngắn với nhau, riêng cặp O2−- O2− có thêm tương tác dipole lưỡng cực

Hình 3.3: Vùng tính thế năng tương tác. Nếu hạt ở giữa Cubic, hạt sẽ tương tác với 26 điểm xung quanh hạt.

Do khoảng cách gần nhất giữa 2 nguyên tử Ba là a 3. Do đó, khi tính thế

tương tác với các hạt chúng tôi sẽ tính thế tương tác của hạt với lân cận bậc nhất (khoảng cách giữa 2 ion là a), bậc 2 (khoảng cách giữa 2 ion là a 2), và bậc 3 (khoảng cách giữa 2 ion là a 3).

Giả sử xét một hạt nằm ở trung tâm khối lập phương như hình 3.3, khi đó sẽ

có 26 điểm tương tác thế năng với hạt trung tâm

Bảng 3.1: Thông số BMH của BaTiO3 [55].

Cặp tương tác A(eV) ρ(10-1nm) C(10-6eV nm6)

O2−-O2− 4740.00 0.2686 21.277

Ti4+-O2− 3769.93 0.2589 0

Ba2+-O2− 1061.30 0.3740 0

3.2.3 Tính năng lượng còn lại của hạt sau khi lắng đọng:

Nếu hạt lắng đọng sát đế, khi đó, hạt sẽ tương tác với các vị trí sai hỏng, với

'

k re b s ij

E = EEEE ( 3.5)

Với Erelà năng lượng lắng đọng của hạt, Es là năng lượng tương tác với đế

và Eij là năng lượng tương tác của hạt với các hạt xung quanh.

Nếu hạt lắng đọng trên các lớp trên, khi đó hạt chỉ tương tác với các hạt xung quanh. Năng lượng còn lại của hạt sau khi lắng đọng là:

'

0

k re

E =EE ( 3.6)

if z0==1

% Hat lang dong sat de

% Kiem tra hat co roi vao vtri sai hong hay khong LDSH=false;

for i=1:length(D)

if x0==D(1,i) && y0==D(2,i) LDSH=true; (adsbygoogle = window.adsbygoogle || []).push({});

break end

end

% Tinh nang luong con lai if LDSH==false Eij=Eij-Es-Et-Eb; else Eij= Eij-Es-Et; end else

% Hat lang dong tren cac dao Eij=Eij-Et;

end

3.2.4 Cập nhật Faver hạt lắng đọng

Sau khi lắng đọng chương trình sẽ cập nhật từng hạt vào ma trận A và B

function capnhat(vt,hatxet,E0,ddkt) global A B

% Vt: Vtri cua hat; hatxet: hat duoc cap nhat tai vt % E0: nang luong cua hat; ddkt: do dai khuech tan % Cap nhat ma tran A

A(vt(1),vt(2),vt(3))=hatxet; % Cap nhat ma tran B

sizeB=size(B);shkt=sizeB(2)+1; B(1,shkt)=vt(1);B(2,shkt)=vt(2); B(3,shkt)=vt(3); B(4,shkt)=E0; B(5,shkt)=ddkt; return

Khi tổng số hạt lắng đọng trong một xung bằng Faver quá trình lắng đọng ngừng và chuyển qua quá trình khuếch tán.

3.3 Quá trình khuếch tán

3.3.1 Chọn hạt có khả năng khuếch tán

Các hạt trong ma trận B đều có khả năng khuếch tán. Do đó, chương trình sẽ

chọn ngẫu nhiên một hạt trong ma trận khuếch tán B và thực hiện quá trình khuếch tán cho hạt đó. sizeB=size(B); hkt=randint(1,1,[1 sizeB(2)]); x_hkt=B(1,hkt); y_hkt=B(2,hkt); z_hkt=B(3,hkt); E_hkt=B(4,hkt); ddkt_hkt=B(5,hkt); hatxet=A(x_hkt,y_hkt,z_hkt); %% Chọn hạt khuếch tán %% Hàm cập nhật các hạt

3.3.2 Tính thế năng của hạt với các hạt xung quanh

Quá trình tính toán hoàn toàn tương tự như tự như trong quá trình lắng đọng

3.3.3 Tìm các vị trí dịch chuyển khả dĩ (DCKD)

Để tăng độ linh động của các hạt, chúng tôi cho hạt có thể khuếch tán qua tất cả 13 vị trí lân cận gần nhất (hình 3.5).

Hình 3.5: Mô hình khuếch tán của hạt.

Do mỗi vị trí chỉ có duy nhất một hạt và mỗi hạt có kich thước khác nhau nên sẽ có các quy tắc dịch chuyển sau cho từng hạt:

Các vị trí dịch chuyển phải trống

Nếu hạt được chọn khuếch tán là Ba, khi đó nếu tại các điểm lân cận bậc nhất của các vị trí khuếch tán có hạt chiếm thì vị trí đó là cấm.

Nếu hạt được chọn khuếch tán là Ti, khi đó nếu tại các điểm lân cận bậc nhất của các vị trí khuếch tán có hạt Ba chiếm thì vị trí đó là cấm.

Nếu hạt được chọn khuếch tán là O, khi đó nếu tại các điểm lân cận bậc nhất của các vị trí khuếch tán có hạt Ba hoặc O chiếm thì vị trí đó là cấm.

Sau khi xét tất cả 13 vị trí, nếu hạt không thể khuếch tán sang vị trí nào khi

đó hạt được xem như dừng khuếch tán, và cập nhật hạt vào ma trận C Nếu có các vị trí khả dĩ thì cập nhật các vị trí đó vào ma trận DCKD

Nếu có các vị trí khả dĩ cho hạt khuếch tán thì tính thế năng tương tác của hạt với các vị trí xung quanh và với đế tại các vị trí đó.

3.3.4 Tính thế năng tương tác của hạt tại các vị trí DCKD. (adsbygoogle = window.adsbygoogle || []).push({});

Tính thế năng tương tác của hạt tại các vị trí DCKD với các vị trí xung quanh và với đế tại các vị trí đó.

Quá trình tính toán hoàn toàn tương tự như tự như trong quá trình lắng đọng.

3.3.5 Tính xác suất dịch chuyển qua các vị trí DCKD

Để tính xác xuất của hạt qua các vị trí DCKD, ta cần tính tần số dịch chuyển qua các vị trí đó.

Trong quá trình tìm xác xuất dịch chuyển, chúng tôi xét 2 trường hợp:

Một phần của tài liệu Mô phỏng ba chiều sự phát triển màng có cấu trúc perovskite của batio3 bằng phương pháp động học monte carlo (Trang 32 - 106)