2.2.1. Giới thiệu
Kỹ thuật Particle-based (hay còn gọi là phƣơng pháp Lagrangian) mô tả chất lỏng sử dụng các phần tử (Particles). Bằng cách trực tiếp theo dõi từng
phần của quá trình các phần tử di chuyển qua những miền trống. Phƣơng
pháp particle không chú trọng việc bảo toàn khối lƣợng và cung cấp khái niệm mô phỏng khung đơn giản, linh hoạt.
Mô phỏng Particle-based sử dụng cách tiếp cận luân phiên – SPH (Smoothed Particle Hydro Dynamics), đƣợc phát triển đầu tiên bởi Lucy, Gingold và Monaghan. Với cách tiếp cận này những phần tử trong khối chất lỏng duy trì các thuộc tính khác nhau ví dụ nhƣ mật độ, khối lƣợng, vận tốc.v.v…Và đƣợc theo dõi trong suốt quá trình mô phỏng.
Kỹ thuật Particle-based ổn định hơn Kỹ thuật Physically-based nhƣng vẫn yêu cầu bộ nhớ tƣơng đối lớn.
2.2.2. Tiến trình mô phỏng
Chất lỏng đƣợc biểu diễn bằng cách phát triển các phần tử trong suốt không gian và thời gian. Mô phỏng particle thƣờng đi qua các bƣớc: đầu tiên các lực khác nhau đƣợc tính và đƣợc tích lũy cho mỗi particle. Sau đó những lực này đƣợc sử dụng để thay đổi vận tốc và cuối cùng chúng đƣợc sử dụng để cập nhật vị trí của particle.
Ở bƣớc cuối cùng, vận tốc đƣợc tính lại bằng cách lấy vị trí đã giãn ra trừ đi vị trí trƣớc đó. Lý do phải tính lại vận tốc là độ giãn (the relaxation displacements) tƣơng đƣơng với xung lực đƣợc áp dụng với vận tốc lúc bắt đầu bƣớc tiếp theo. Những xung lực này đƣợc tính ở vị trí gần vị trí cuối cùng (ở chỗ giữa vị trí đã dự đoán và vị trí cuối cùng). Bằng trực giác, sử dụng những lực tồn tại xa hơn ngăn chặn tính không ổn định bằng cách dự đoán các trạng thái khó hơn và phản ánh lại trƣớc khi chúng thực sự xảy ra.
Nhƣ vậy, tính không nén đƣợc và không nhóm đƣợc đƣợc thể hiện bằng cách thực hiện thủ tục nới lỏng (làm giảm - relaxation) mật độ kép, hiệu ứng của chất dẻo đàn hồi và không tuyến tính thu đƣợc bằng cách thêm lực co dãn vào khoảng trống giữa các phần tử.
Các bƣớc mô phỏng của chúng ta đƣợc mô tả chi tiết trong thuật toán 1.
Đầu tiên, chúng ta update vận tốc của particle tùy theo trọng lực và vận tốc (dòng 1 đến 5).
Dòng 12 đến 15: thay đổi spring (lực co dãn) dựa vào độ dài và sử dụng lực spring thay thế particle.
Đảm bảo tính bảo toàn khối lƣợng và tính không nhóm đƣợc (dòng 16).
Cuối cùng, sự va chạm giữa các particle và các vật thể tĩnh/động đƣợc giải quyết và vận tốc particle đƣợc tính lại.
Minh họa: Áp đặt trọng lực cho particles Áp đặt trọng lực và tính nhớt cho particles Áp đặt trọng lực và tính nhớt cho particles Dự đoán vị trí
Áp đặt trọng lực và tính nhớt cho particles
Dự đoán vị trí
Làm giảm- relax (mật độ và lực co dãn- density and spring)
Áp đặt trọng lực và tính nhớt cho particles
Dự đoán vị trí
Làm giảm- relax (mật độ và lực co dãn- density and spring)
Đặt lại vị trí và thu đƣợc vận tốc mới
Tổng quan quá trình dịch chuyển của các Particles
Để thực hiện đƣợc thuật toán trên, ta cần giải quyết 3 vấn đề lớn: - Làm giảm mật độ kép (dòng 16)
- Biểu diễn đƣợc mặt phân cách (dòng 5,12,15) - Giải quyết vấn đề va chạm với đối tƣợng (dòng 17)
2.2.3. Mật độ kép
2.2.3.1. Mật độ và áp suất
Trong phạm vi SPH, mục đính chính là tối thiểu hóa hệ số nén, chuyển thành ràng buộc cục bộ để duy trì mật độ không đổi. Chúng ta có công thức tính mật độ ở particle i là :
Rij = | rij | ; rij = xj - xi
N(i) : biểu thị tập hợp các particle hàng xóm nằm trong phạm vi của bán kính tƣơng tác h.
J: các hàng xóm của particle i.
Quan niệm về mật độ này không hoàn toàn đúng với đặc tính vật lý, nó đơn giản chỉ là 1 con số xác định số lƣợng các particle có quan hệ với hàng xóm của nó. Ngƣời ta đã cố gắng đƣa ra cách nhìn nhận khác về mật độ, ví dụ nhƣ tập hợp các particle xung quanh 1 particle khác (mật độ ) có dạng là một không gian giới hạn bởi đa thức (r/h)-2, hoặc có dạng hình cái chuông với đa thức (1-(r/h)2
)3, nhƣng tốt nhất vẫn là hình đầu nhọn với phƣơng trình bậc 2 (1-r/h)2. Chúng ta định nghĩa áp suất giả Pi tỷ lệ với hiệu của mật độ hiện tại ρi và mật độ nguyên của ρ0:
Pi = k(ρi - ρ0) (2) k: độ cứng (stiffness)
Để làm cho công thức này đơn giản và khả thi, chúng ta kết hợp hằng số tỷ lệ với mật độ trong SPH với các tham số k và ρ0. Ngoài ra, ta coi nhƣ tất cả các particle đều có khối lƣợng giống nhau. Theo cách này thì khối lƣợng đƣợc đƣa ra ngoài và không có mặt trong phƣơng trình.
2.2.3.2. Phục hồi tính không nén đƣợc (Incompressibility Relaxation)
Phục hồi tính không nén đƣợc đƣợc thực thi nhƣ là vòng lặp toàn cục trên mỗi particle i. Phép lặp của vòng lặp này bao gồm 2 bƣớc trên mỗi hàng xóm j của particle i. Bƣớc đầu tiên, ƣớc lƣợng mật độ cục bộ ở particle i bằng cách tính tổng trọng lƣợng của các hàng xóm của chúng (phƣơng trình 1). Nếu mật độ này cao hơn ρ0, những hàng xóm này sẽ bị đẩy ra xa, nếu thấp hơn chúng sẽ đƣợc kéo vào gần hơn. Việc đẩy hoặc kéo các hàng xóm đƣợc thực hiện trong bƣớc 2 trên những hàng xóm của particle i, trong đó mỗi cặp i,j đổi chỗ cho nhau. Việc giảm mật độ di chuyển giữa 2 particle tỷ lệ với áp suất giả và trọng lƣợng theo phƣơng trình tuyến tính sau:
: là véc tơ đơn vị từ particle i đến j Γt2
: lƣu thời gian độc lập của từng bƣớc.
Chúng ta áp dụng việc đổi chỗ này bằng cách thay đổi vị trí dự đoán của particle j. Việc đổi chỗ ngƣợc lại đƣợc áp dụng cho particle i, làm cho bản chất hành động đƣợc hoạt động liên tục và do đó xung lực tuyến tính đƣợc bào tồn. Sự dịch chuyển này có hƣớng dọc theo , động lƣợng đƣợc bảo tồn.