giải pháp được sản xuất cho Navier-Stokes không thể nén - làm thế nào để tìm các trường vận tốc không phân kỳ?


10

Trong phương pháp của các giải pháp được sản xuất (MMS), người ta đưa ra một giải pháp chính xác, thay thế nó trong các phương trình và tính toán thuật ngữ nguồn tương ứng. Các giải pháp sau đó được sử dụng để xác minh mã.

Đối với các phương trình Navier-Stokes không thể nén, MMS dễ dàng dẫn đến một thuật ngữ nguồn (khác không) trong phương trình liên tục. Nhưng không phải tất cả các mã đều cho phép các thuật ngữ nguồn trong các phương trình liên tục, do đó, đối với các mã này chỉ có các giải pháp được sản xuất với các trường vận tốc không có phân kỳ sẽ làm. Tôi tìm thấy ví dụ này cho một miền Ω=[0,1]2

u1=cos(πx)sin(πy)u2=sin(πx)cos(πy)
Trong các trường hợp 3D nói chung, làm thế nào để tạo ra trường vận tốc không phân kỳ?

Câu trả lời:


7

Sử dụng một hàm truyền vector hoặc lấy sản phẩm chéo của hai độ dốc. Ví dụ: nơi là một lĩnh vực vector lựa chọn của bạn, hoặc nơi và là hai lĩnh vực vô hướng mà bạn chọn.

u=×A
A
u=f×g
fg

Cả hai đều khó có vận tốc không phân kỳ và quy định các điều kiện biên, nhưng miễn là mã của bạn cho phép bạn đặt các hàm tùy ý cho các điều kiện biên của mình, bạn sẽ ổn.

ETA: Tất nhiên, phương trình động lượng của bạn sẽ phải chấp nhận hàm cưỡng bức, nhưng tôi luôn cảm thấy tốt hơn về việc buộc phương trình động lượng hơn là tôi đã thêm một bên phải vào phương trình liên tục.


Cảm ơn! (buộc phương trình liên tục chỉ xảy ra trong mô hình xâm thực theo như tôi biết)
chris

5

Đây không phải là một câu trả lời chung, nhưng đối với các phương trình Navier-Stokes, có những giải pháp được sản xuất mô tả dòng chảy thực. Ví dụ: trường dòng chảy Kovasznay là một lựa chọn phổ biến:

http://link.springer.com/article/10.1007/BF00948290

Tài liệu tham khảo ban đầu là: Kovasznay LIG, "Dòng chảy phía sau lưới hai chiều". Proc. Cambridge Philos. Sóc., Trang 44, 1948.


1948 (!) Tôi không nhận ra đây là "dòng chảy thực sự". Điều đó có nghĩa là nó thực sự có thể được đo trong một thí nghiệm vật lý (trái ngược với mô phỏng trong một thí nghiệm số)?
chris

Tôi tin, vâng.
Wolfgang Bangerth

Không. Đó là dòng chảy lý tưởng hóa trong một khoảng cách phía sau lưới. Nhưng không ai biết lưới trông như thế nào và rất có thể nó phải được làm từ vật liệu "rất mềm"
Guido Kanschat

2

Đó là những gì tôi thường làm.

Xác định chức năng hợp lý hóa:

Ψ=[ψxψyψz]

vận tốc bằng:

u=×Ψ=[ux=yψzzψyuy=zψxxψzuz=xψyyψx].

Bây giờ bạn có thể chọn bất kỳ áp suất trung bình không hợp lý nào và xây dựng một thuật ngữ bắt buộc.

Tôi đăng mã ví dụ SymPy cho và các điều kiện biên đồng nhất, thưởng thức:Ω=[0,1]3

 from sympy import *

 x,y,z = symbols('x y z')

 X = Matrix([[x],[y],[z]])

 psi = zeros(3,1)
 psi[0,0] = sin(2*pi*x)*y**2*(1-y)**2*z**2*(1-z)**2
 psi[2,0] = x**2*(1-x)**2*y**2*(1-y)**2*sin(2*pi*z)

 curl_psi = zeros(3,1)
 curl_psi[0] = diff(psi[2],X[1]) - diff(psi[1],X[2])
 curl_psi[1] = diff(psi[0],X[2]) - diff(psi[2],X[0])
 curl_psi[2] = diff(psi[1],X[0]) - diff(psi[0],X[1])
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.