Làm thế nào các hệ số không cố định nên được xử lý với sơ đồ hướng gió thứ tự khối lượng hữu hạn?


11

Bắt đầu với phương trình thăng tiến ở dạng bảo tồn.

ut=(a(x)u)x

trong đó là vận tốc phụ thuộc vào không gian và u là nồng độ của một loài được bảo tồn.a(x)u

Phân biệt từ thông (trong đó từ thông , được xác định trên các cạnh của các ô giữa các điểm lưới), u t = 1f=a(x)u

ut=1h(fj12fj+12)

Sử dụng một đơn đặt hàng đầu tiên, chúng tôi ước tính các thông lượng như,

Cho, ut=1

fj12=a(xj12)uj1fj+12=a(xj+12)uj
ut=1h(a(xj12)uj1a(xj+12)uj)

Nếu không đổi thì điều này sẽ giảm xuống theo sơ đồ hướng gió quen thuộc, tức là u t = aa(x).ut=ah(uj1uj)

Câu hỏi của tôi là, làm thế nào chúng ta có thể xử lý các hệ số không cố định của phương trình thăng tiến? Vận tốc được xác định tại các trung tâm tế bào, vì vậy một cách tiếp cận đơn giản sẽ là như sau,

a(xj12)a(xj1)a(xj+12)a(xj)

Đây là cách tiếp cận ưa thích của tôi vì nó rất đơn giản để thực hiện.

Tuy nhiên, chúng ta cũng có thể sử dụng (tôi đoán) một sơ đồ trung bình để xác định vận tốc ở các cạnh của ô,

a(xj12)12a(xj1)+12a(xj)a(xj+12)12a(xj)+12a(xj+1)

Trong cuốn sách của LeVeque, ông nói,

a(x)ajaj12

Nhưng anh ấy không thực sự xây dựng quá nhiều sau đó. Một cách tiếp cận phổ biến là gì?

Tôi đang giải quyết một vấn đề bảo tồn (tôi đang sử dụng phương trình thăng tiến như một phương trình liên tục) vì vậy tôi muốn đảm bảo rằng sau khi áp dụng sự phân biệt đối xử rằng tài sản bảo tồn được bảo tồn. Tôi muốn tránh mọi bất ngờ tiềm ẩn liên quan đến các hệ số biến đổi này! Có ai có một số ý kiến ​​và hướng dẫn chung?


Cập nhật Có hai câu trả lời thực sự hay dưới đây và tôi chỉ có thể chọn một :(

Câu trả lời:


4

a

Điều quan trọng nhất (và bạn đã chạm vào vấn đề này trong câu hỏi của bạn) là hệ thống rời rạc vẫn còn bảo thủ. Với điều kiện chương trình của bạn có thể được viết dưới dạng

ujt=Fj12(uj1,uj)Fj+12(uj,uj+1)

sau đó nên bảo thủ, vì

tudx=jujtδx=j(Fj12Fj+12)δx=(F12FN+12)δx

Cách tiếp cận đơn giản của bạn sẽ hoạt động tốt, vì sẽ lấy trung bình vận tốc giữa các ô để xác định nó trên giao diện ô, với điều kiện vận tốc luôn dương. Hơn nữa, tôi không nghĩ rằng tính trung bình sẽ giúp bạn có độ chính xác cao hơn, vì vậy bạn có quyền thích cách đơn giản hơn.

Nếu bạn cũng đang giải quyết vận tốc và bạn có một hệ phương trình, bạn có thể cần phải cẩn thận hơn. Tương tự như vậy, nếu bạn đang giải quyết một PDE hyperbol phi tuyến và sử dụng các bộ hạn chế thông lượng, bạn phải thận trọng hơn.

* Tuy nhiên, đối với một hệ thống các PDE hyperbol, sử dụng các lưới so le có thể cải thiện đáng kể sự phân tán / khuếch tán nhân tạo. Nếu bạn muốn biết thêm, hãy tra cứu Arakawa C-grids hoặc xem chương 4 của cuốn sách này .


Cảm ơn bạn đã giải thích. Và trực giác của bạn là chính xác; Tôi đang giải một hệ phương trình trong đó một trong các phương trình là vận tốc (PDE của các biến khác). Hệ thống các phương trình chỉ là 1D, tôi dự định sử dụng phương pháp gió ngược bậc 1 thích ứng (có thể lật giữa trung tâm bậc 2 và gió ngược) có thể phù hợp theo cấp số nhân. Tôi không sử dụng bộ giới hạn thông lượng, nhưng hệ thống là phi tuyến tính. Tôi có cần phải "cẩn thận hơn" trong tình huống này không?
boyfarrell

Tất cả phụ thuộc vào việc bạn mong đợi sóng xung kích và hình thành như thế nào, nếu có khả năng vận tốc sẽ xuống dưới 0 ở một số vùng, hoặc nếu vận tốc có thể trở nên đủ cao để bạn chạy theo điều kiện Courant-Friedrichs-Lewy Ở một vài điểm. Điều đó nói rằng, tôi sẽ thử cách tiếp cận đơn giản trước để xem nó có hoạt động không, điều này có thể làm tốt. Nếu nó thất bại, nó sẽ hoạt động một cách ngoạn mục và rõ ràng, vì vậy tôi không nghĩ rằng bạn cần phải lo lắng về việc có gì đó không đúng trong radar của bạn.
Daniel Shapero

Có, tôi hy vọng vận tốc sẽ chỉ khác không ở trung tâm miền của tôi và sau đó nhanh chóng tiến về 0 khi một người di chuyển ra khỏi trung tâm. Tôi đang chọn bước thời gian để điều kiện CFL được thỏa mãn (sử dụng vận tốc tối đa), lưới được cố định. Các tiêu chí cho một sóng xung kích là gì? Tôi không dự đoán sẽ thấy điều đó (nhưng bạn không bao giờ biết).
boyfarrell

5

a(x)

Điều tôi muốn nói là nhất quán là điều kiện duy nhất mà phép nội suy cần thỏa mãn là

ai+1/2+=ai+1/2

Nói cách khác, miễn là phương pháp nội suy của bạn liên tục xuyên qua các ranh giới của tế bào, sự rời rạc của bạn được đảm bảo duy trì tính bảo thủ.

Điều này có vẻ không phải là vấn đề lớn ở đây trong 1D (và không nên) nhưng có thể gây ra sự cố tại các giao diện thô-mịn trên lưới AMR đa cấp.


uj+12a(xj+12)a(xj+12)a(xj+1)uj+12

@boyfarrell Sẽ ổn thôi theo nghĩa là phương pháp này vẫn được bảo thủ. Tuy nhiên, nó ảnh hưởng đến độ chính xác của giải pháp. Thông thường, ví dụ, trong các sơ đồ ENO, người ta xấp xỉ toàn bộ hàm thông lượng và không phải là vận tốc và giải pháp riêng biệt.
GradGuy

4

a(xj12)

Để xem tại sao lại như vậy, hãy xem xét định nghĩa phân tích của bảo thủ là

tDu(x)dx=Da(x)u(x)dS,

D

Nếu sự rời rạc của chúng ta là hình thức

ut(xj)=1h(a(xj12)uj12a(xj+12)uj+12)

x1,,xnD=[c,d]c=x12d=xn+12

1hj=1n(a(xj12)uj12a(xj+12)uj+12)=a(x12)u12a(xn+12)un+12,

uj12=uj1uj+12=uja(x)u

a(x)a(xjr),,a(xj+s)a(xj12)

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.