Tải bản đầy đủ (.pdf) (22 trang)

MÔ PHỎNG SỨC CĂNG CỦA BỀ MẶT CHẤT LỎNG THEO PHƯƠNG PHÁP PARTICLE

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (183.73 KB, 22 trang )



HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG






NGUYỄN THỊ THỌ

MÔ PHỎNG SỨC CĂNG CỦA BỀ MẶT CHẤT LỎNG

THEO PHƯƠNG PHÁP PARTICLE


Chuyên ngành: KHOA HỌC MÁY TÍNH
Mã số : 60.48.01.01


TÓM TẮT LUẬN VĂN THẠC SĨ




Hà Nội - 2014






Luận văn được hoàn thành tại:
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG


Người hướng dẫn khoa học: PGS.TS Đỗ Năng Toàn


Phản biện 1: TS. Nguyễn Văn Vinh

Phản biện 2: TS. Nguyễn Phương Thái


Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn
thạc sĩ tại Học viện Công nghệ Bưu chính Viễn thông
Vào lúc: giờ ngày 15 tháng 02 năm 2014




Có thể tìm hiểu luận văn tại:
− Thư viện của Học viện Công nghệ Bưu chính Viễn thông

1

MỞ ĐẦU

Trong những năm gần đây, công nghệ thông tin đã
được ứng dụng mạnh mẽ trong hầu hết tất cả các lĩnh vực.
Việc “tái tạo” các hiện tượng, sự vật trong thế giới thực
trên máy tính có rất nhiều tác dụng. Trong giáo dục,

những thí nghiệm, những ví dụ được mô tả sát thực bằng
máy tính giúp cho người học hứng thú hơn, kiến thức
được thể hiện rõ hơn, trực quan hơn, đầy đủ hơn.
Xuất phát từ thực tế đó, luận văn chọn đề tài “Mô
phỏng sức căng của bề mặt chất lỏng theo phương pháp
Particle”. Mục tiêu chính của luận văn là: Nghiên cứu kỹ
thuật mô phỏng sức căng của bề mặt chất lỏng theo
phương pháp Particle. Cấu trúc luận văn gồm Phần mở
đầu, Phần kết luận và 3 chương nội dung, cụ thể như sau:
Chương 1. Khái quát về mô phỏng chất lỏng và bề mặt
chất lỏng
Chương 2. Mô phỏng sức căng của bề mặt chất lỏng theo
phương pháp Particle
Chương 3. Chương trình – Mô phỏng một số hiệu ứng của
chất lỏng
2

CHƯƠNG 1. KHÁI QUÁT VỀ MÔ PHỎNG
CHẤT LỎNG VÀ BỀ MẶT CHẤT LỎNG

1.1 Khái quát về mô phỏng chất lỏng
Hiện nay tính toán động lực học chất lỏng
(Computational Fluid Dynamics CFD) là một chủ đề khá
mới mẻ trong đồ họa máy tính. Mô hình chất lỏng grid-
base đã được sử dụng phổ biến trong Đồ họa máy tính
suốt thập kỷ qua. Gần đây, particle đã được sử dụng vào
CFD trong Đồ họa máy tính. Chúng đã được chứng minh
là một lựa chọn tốt cho các mô phỏng chất lỏng quy mô
nhỏ - các mô phỏng mà cho phép thể hiện chi tiết tương tác.
Một số nghiên cứu trước đó cũng đã đạt được các kết

quả khả quan trong mô phỏng particle-base fluid, như
RealFlow3 và PhysX, cả hai giải pháp này đều là những
sản phẩm thương mại nhằm mục đích chuyên nghiệp
người dùng cuối.
Mục tiêu chính của luận văn là phát triển một
phương pháp particle-based phù hợp để mô phỏng chất
3

lỏng ở mức tương tác. Một mục tiêu khác nữa là sử dụng
các đại lượng vật lý và các tham số chuẩn cho các
mô phỏng.
1.1.1 Vai trò của mô phỏng chất lỏng
Chất lỏng là loại vật liệu quan trọng trong đời sống,
sinh hoạt, sản xuất của con người. Việc thể hiện thành
công hiệu ứng chất liệu này trong thực tại ảo sẽ cho phép
ta đi sâu vào thế giới ảo để tạo ra những giá trị thật cho
cuộc sống con người.
1.1.2 Một số hiệu ứng cơ bản
Chất lỏng tồn tại ở rất nhiều trạng thái và có các
tính chất rất phức tạp. Có 4 hình dạng chính:
• Dòng chất lỏng
• Giọt chất lỏng
• Khối chất lỏng
• Bề mặt chất lỏng
4

1.1.3 Cơ sở lý thuyết của mô phỏng chất lỏng

Cơ sở lý thuyết của mô phỏng chất lỏng chính là
các tính chất vật lý của chúng.

1.1.3.1 Tính di động
1.1.3.2 Tính liên tục
1.1.3.3 Chất lỏng có khối lượng
1.1.3.4 Tính nén được của chất lỏng
1.1.3.5 Sức căng bề mặt
1.1.3.6 Tính nhớt

1.2 Mô phỏng bề mặt chất lỏng
1.2.1 Các lực bề mặt của chất lỏng
Cho một phần tử diện tích dS của ∑: lực tổng hợp
d của các lực tác dụng bởi các hạt ngoài lên các hạt
trong, thường có một thành phần pháp tuyến d
N
và một
thành phần tiếp tuyến d
T
. Thành phần tiếp tuyến được
gọi là áp lực. Thành phần tiếp tuyến được gọi là lực nhớt
(hay lực trượt).
5

1.2.2 Động lực học chất lỏng cổ điển

Trong Đồ họa máy tính, chuyển động của chất lỏng
là một vấn đề quan trọng khi mô phỏng các hiện tượng
hàng ngày, ví dụ mưa, bùn, nước đổ, khói thuốc lá, hơi
nước, bọt ẩm ướt, sóng biển, vv …Luận văn sẽ giới thiệu
ngắn gọn về hệ phương trình Navier-Stokes cho dòng chất
lỏng, đó là cơ sở của nghiên cứu này. Để cài đặt các
phương trình Navier-Stokes cho chuyển động của chất

lỏng, có 2 phương pháp chính: phương pháp Euler (grid-
base), và Lagrange (particle-base).
1.2.2.1 Hệ phương trình Navier – Stokes
Công thức cổ điển của chuyển động cho dòng chất
lỏng không nén được qua thời gian t được chi phối bởi hệ
phương trình Navier-Stokes.

(1.1)

(1.2)

6

1.2.2.2 Chất lỏng Euler
Chất lỏng được coi là tổng hợp của các ô chất lỏng
(fluid cell), được xếp trên 1 lưới đều, mỗi ô chứa 1 số
phân tử chất lỏng (hay hạt chất lỏng). Các phương pháp
grid-base vẫn không thể tạo ra tương tác cho chất lỏng
một cách chi tiết.
7

CHƯƠNG 2: MÔ PHỎNG SỨC CĂNG
CỦA BỀ MẶT CHẤT LỎNG THEO
PHƯƠNG PHÁP PARTICLE

2.1 Sức căng bề mặt chất lỏng
Trong mục này luận văn sẽ tóm tắt các nghiên cứu
trước đó về chất lỏng dựa trên lưới trong đồ họa máy tính,
bao gồm cả các lý thuyết cơ bản về chuyển động chất lỏng.
2.1.1 Thủy động lực học hạt trơn (Smoothed

Particle Hydrodynamics)
SPH là một phương pháp nội suy các giá trị gần
đúng và các đạo hàm của các đại lượng liên tục bằng cách
sử dụng các điểm mẫu rời rạc.
2.1.1.1 Các định nghĩa
SPH về cơ bản là 1 phương pháp nội suy. Sự nội
duy dựa trên lý thuyết tích phân toàn phần sử dụng các
nhân (kenel) để xấp xỉ một hàm delta. Tích phân toàn
phần của một hàm của đại lượng bất kỳ, A(r), được xác
định trên toàn không gian Ω, bằng:
8


(2.1)

với r là điểm bất kỳ trong Ω, và W là nhân làm trơn
(smoothing kernel) với h là chiều rộng.
2.1.1.2 Nhân làm trơn (Smoothing kernel)
Lựa chọn nhân làm trơn cho bài toán cụ thể là một
việc quan trọng. Đạo hàm của smoothing kernel có ảnh
hưởng lớn đối với các ước lượng SPH. Kernel thích hợp
phải đáp ứng 2 điều kiện: được chuẩn hóa và dương.

2.1.2 Động lực học chất lỏng Lagrange
Công thức Lagrange cơ bản của hệ phương trình
Navier – Stokes cho chất lỏng đẳng nhiệt, không nén
được là:

(2.19)


2.1.2.1 Mật độ khối
Tại hạt i, mật độ khối được tính theo công thức:

(2.10)

9

2.1.2.2 Các nội lực
Nội lực là lực phát sinh từ bên trong chất lỏng, và
trong (2.19), chúng là mật độ áp lực và mật độ lực nhớt,
chúng lần lượt là số hạng đầu tiên và thứ hai trong vế phải.
Nội lực của chất lỏng là cần thiết khi áp dụng SPH để tính
các đạo hàm của các đại lượng.
2.1.2.3 Các ngoại lực
Các ngoại lực tác dụng lên particle gồm: Trọng lực,
Lực nâng, Lực căng bề mặt, Tương tác với người dùng.
2.1.2.4 Xử lý va chạm
Thông thường các hạt được đặt trong các vật chứa
như là hộp, khối cầu, và khối hình con nhộng. Khi các hạt
va chạm với bình chứa, chúng phải ở bên trong các biên
của bình chứa. Xử lý va chạm có thể chia thành 2 phần
nhỏ: phát hiện va chạm và đáp ứng va chạm.
2.1.2.5 Thời gian lặp
Để mô phỏng dòng chất lỏng, mỗi hạt được cập
nhật vị trí trong khoảng thời gian time step cố định ∆t.
10

Khởi tạo hệ
thống SPH
Tính Mật

độ và Áp
suất
Tính các
nội lực
Tính các
ngoại lực
Thời gian lặp
và xử lý va
chạm
Kết xuất các
Particle
Trong phần này, chúng ta sẽ đề cập đến phương pháp tích
phân Leap-Frog.
2.2 Mô phỏng sức căng bề mặt chất lỏng theo
phương pháp Particle
Hình 2.12 minh họa quy trình mô phỏng chất lỏng
Lagrange cơ bản. Trong chương này, chúng ta sẽ đi vào
chi tiết vào nội dung chi tiết của từng bước trong quy
trình đó.



2.2.1 Tìm lân cận gần nhất
Giá trị của một số hạng SPH lặp đi lặp lại cho các
hạt. Vì mỗi hạt phải xác định nhiều số hạng SPH, nên độ
phức tạp về thời gian cho mô phỏng nước Lagrange với n
hạt cỡ khoảng O(n
2
). Các tính toán SPH có thể tăng đáng
kể hiệu suất bằng cách sử dụng một giải thuật NNS hiệu

quả để tìm các hạt trong một bán kính h.
11

2.2.2 Tính không nén được
Với chất lỏng Lagrange, mật độ áp suất phân bố để
có thể giữ cho mật độ khối ở mọi vị trí không vượt quá
mật độ nghỉ. Do đó tính không nén được hoàn toàn được
mô hình hóa thông qua áp suất.
2.2.3 Các tham số vật lý
Để sử dụng chính xác các đại lượng vật lý, điều
quan trọng là không làm tăng miền giá trị của các tham số
vật lý. Động học chất lỏng tương tác Lagrange có thể mô
phỏng nhiều loại chất liệu chất lỏng ở quy mô nhỏ, ở đó,
các chi tiết phong phú được tập trung thể hiện. Các tham
số được đề cập gồm:
• Thể tích chất lỏng và Khối lượng hạt
• Bán kính nhân làm trơn
• Time Intergator và Time Step
• Hằng số khí và Mật độ nghỉ
• Độ nhớt
• Hệ số căng bề mặt
12

2.2.4 Một số chất liệu lỏng
Điều quan trọng là sự kết hợp của các thông số vật
liệu vật lý cùng nhau tạo thành hành vi có một không hai
của chất lỏng. Các chất liệu lỏng được giới thiệu là:
• Nước
• Chất nhớt
2.2.5 Kết xuất

Để mô phỏng những vật liệu lỏng, chúng ta dựng
hình cho các hạt giống như quả cầu màu. Mô hình này
cung cấp một sự hiểu biết đáng tin cậy về dòng chảy
chất lỏng.

13

CHƯƠNG 3: CHƯƠNG TRÌNH MÔ PHỎNG
MỘT SỐ HIỆU ỨNG CỦA CHẤT LỎNG

3.1 Phát biểu bài toán
Xây dựng chương trình mô phỏng một số hiệu ứng
của chất lỏng. Yêu cầu thể hiện được một số tính chất như
sức căng bề mặt và độ nhớt và thể hiện hiệu ứng va chạm
với vật rắn.
3.2 Phân tích, lựa chọn phương pháp
Như đã trình bày trong phần lý thuyết. Có hai
phương pháp mô phỏng chất lỏng: grid-base (Euler) và
particle-base (Lagrange). Trong đó, phương pháp particle-
base phù hợp hơn khi cần mô phỏng chi tiết các hiệu ứng
của chất lỏng và xử lý va chạm real time. Với yêu cầu của
bài toán này, luận văn sẽ lựa chọn phương pháp particle-
base để thể cài đặt chương trình.
14

Phương pháp chất lỏng Lagrange

Phần tiếp theo, luận văn sẽ tóm tắt các phần khác
nhau của mô phỏng với tham chiếu đến các lý thuyết đã
được trình bày và chi tiết cài đặt.

Bước 1: Khởi tạo hệ SPH
i. Tạo chất liệu chất lỏng, ví dụ, sử dụng các giá trị đã
cho trong mục 2.2.4
ii. Tạo n hạt và thiết lập các vị trí, vận tốc khởi tạo, và
cố định khối lượng hạt, ví dụ dùng (2.32) để xác
định các giá trị còn thiếu.
iii. Khởi tạo nhân làm trơn, sử dụng (2.33) để tính bán
kính nhân.
iv. Tạo cấu trúc dữ liệu bảng băm bằng (2.29) và sử
dụng l = h, và chèn mỗi particle bằng (2.30)
v. Tạo các đối tượng va chạm, ví dụ, sử dụng implicit
primitives trong mục 2.1.2.4
vi. Khởi tạo tích phân leap-frog bằng (2.26) cho tất cả
các hạt.
15

Bước 2: Tính mật độ và áp suất
Với mỗi hạt i, thực hiện:
i. Tìm kiếm hạt lân cận N
i
sử dụng spatial hashing
single particle query trong
mục 2.2.1
ii. Tính mật độ khối ρ
i
bằng (2.10), nhưng chỉ lặp qua
các hạt trong N
i

iii. Tính áp suất p

i
bằng (2.14), và dùng mật độ chất
liệu làm mật độ nghỉ, ρ
0

Bước 3: Tính các nội lực
Với mỗi hạt i, thực hiện:
i. Tìm hạt lân cận N
i
sử dụng spatial hashing single
particle query trong mục 2.2.2 và chỉ sử dụng các
hạt từ N
i
để tính các lực SPH
ii. Tính mật độ áp lực tác dụng lên hạt bằng (2.13)
iii. Tính mật độ lực nhớt tác dụng lên hạt bằng (2.15)
iv.  +
Bước 4: Tính các ngoại lực
Với mỗi hạt chất lỏng i, thực hiện:
i. Tính mật độ lực hấp dẫn bằng công thức (2.16)
16

ii. Tính tiếp tuyến hướng vào bên trong bề mặt bằng
công thức (2.18)
iii.  0
iv. Nếu (2.19) nhận giá trị đúng và sử dụng (2.34) làm
ngưỡng thì
a. Tính lực căng bề mặt cho hạt bằng công
thức (2.17)
v.  +

Bước 5: Thời gian lặp và xử lý va chạm
Với mỗi hạt chất lỏng i, thực hiện:
i.  +
ii. Tính gia tốc hạt bằng (2.8)
iii. Dùng tích phân leap-frog để tính vận tốc và vị trí
bằng (2.24), (2.25)
iv. Phát hiện va chạm với collision primitives bằng
(2.20)
v. Nếu va chạm được tìm thấy thì:
a. Tính vị trí hạt tùy theo điểm tiếp xúc bằng
(2.22)
b. Cập nhật vận tốc bằng (2.23)
vi. Xấp xỉ vận tốc mới cho hạt bằng (2.27)
17

Bước 6: Kết xuất các hạt
Với mỗi hạt chất lỏng i, thực hiện:
i. Kết xuất hình cầu với tâm tại r
i
và bán kính được
xác định bằng (2.35)
Các thuộc tính chất của nước và chất nhớt, trình
bày tại mục 2.2.4 sẽ được sử dụng trong quá trình mô
phỏng ở phần này. Hình 3.1 mô tả hai chất lỏng khoảng
cùng thể tích. Phần thú vị trên hình 3.1 là sự khác biệt
trong sức căng bề mặt, gây ra độ cong bề mặt của hai chất
lỏng là khác nhau. Hình 3.2 một sự khác biệt nữa giữa hai
chất lỏng được mô tả. Độ nhớt thấp làm cho nước có thể
phản ứng nhanh nhẹn hơn với các lực tác động, điều này
trái ngược đối với chất lỏng có độ nhớt cao.

Tương tác người dùng với chất lỏng là một phần
quan trọng. Mô phỏng cho phép người dùng tương tác với
một chất lỏng bằng cách click chuột lên bề mặt, hoặc di
chuyển vật rắn trong khối chất lỏng.
18

3.3 Một số kết quả chương trình
Chương trình được viết bằng ngôn ngữ Javascript, chạy
trên nền web. Cấu trúc chương trình gồm các file .js liên
kết với file html.
Trong chương trình demo, luận văn có tham khảo mã
nguồn mở được chia sẻ trên website


Hình 3.4 Mặt nước dao động khi thả vật rắn xuống
19

KẾT LUẬN
Những kết quả thu được của luận văn:
– Nghiên cứu về SPH, một phương pháp mà khi sử dụng
một cách hợp lý có thể kết xuất các mô phỏng chất
lỏng tương tác mà không cần hỗ trợ thêm phần cứng.
– Tìm hiểu phương trình Navier-Stockes cho chuyển
động chất lỏng dựa trên hạt và sử dụng phương pháp
SPH để tính tất cả các đại lượng vật lý phức tạp.
– Mô tả ý nghĩa của các thông số vật lý cần thiết để mô
phỏng chất lỏng particle-base, và đã cố gắng tìm một
liên hệ giữa chúng theo những cách mà người dùng
cuối có thể nhìn nhận chúng một cách trực quan.
– Dựa trên lý thuyết được trình bày và trên cơ sở mã

nguồn mở được chia sẻ trên mạng Internet, luận văn đã
xây dựng chương trình mô phỏng một số hiệu ứng của
chất lỏng như sức căng bề mặt và độ nhớt.
Hướng phát triển:
20

– Mô phỏng một số thí nghiệm vật lý trong trường phổ
thông: Đo sức căng mặt ngoài của chất lỏng, hiện
tượng dính ướt, mao dẫn…

×