Làm thế nào nên áp dụng điều kiện biên khi sử dụng phương pháp thể tích hữu hạn?


15

Theo câu hỏi trước đây của tôi, tôi đang cố gắng áp dụng các điều kiện biên cho lưới thể tích hữu hạn không đồng nhất này,

Ranh giới bên tay trái bao gồm tế bào ma.

Tôi muốn áp dụng điều kiện biên loại Robin cho các lhs của miền ( x=xL) , sao cho

σL=(dux+au)|x=xL

Trong đó là giá trị biên; a , d là các hệ số được xác định trên ranh giới, tiến và khuếch tán tương ứng; u x = uσLa,d , là đạo hàm củau đượcđánh giá tại biên vàulà biến mà chúng ta đang giải.ux=uxuu

Cách tiếp cận có thể

Tôi có thể nghĩ ra hai cách để thực hiện điều kiện biên này trên lưới thể tích hữu hạn ở trên:

  1. Một cách tiếp cận tế bào ma.

    Viết là một sự khác biệt hữu hạn bao gồm một ô ma. σ L = d u 1 - u 0ux

    σL=du1u0h+au(xL)

    A. Sau đó sử dụng phép nội suy tuyến tính với các điểm x 1 để tìm giá trị trung gian, u ( x L ) .x0x1u(xL)

    B. Hoặc tìm bằng cách lấy trung bình trên các ô, u ( x L ) = 1u(xL)u(xL)=12(u0+u1)

    Trong cả hai trường hợp, sự phụ thuộc vào tế bào ma có thể được loại bỏ theo cách thông thường (thông qua thay thế vào phương trình thể tích hữu hạn).

  2. Một cách tiếp cận ngoại suy.

    Ghép một hàm tuyến tính (hoặc bậc hai) với bằng cách sử dụng các giá trị tại các điểm x 1 , x 2 ( x 3 ). Điều này sẽ cung cấp giá trị tại u ( x L ) . Hàm tuyến tính (hoặc bậc hai) sau đó có thể được phân biệt để tìm biểu thức cho giá trị của đạo hàm, uu(x)x1,x2x3u(xL) , tại biên. Cách tiếp cận nàykhôngsử dụng một tế bào ma.ux(xL)

Câu hỏi

  • Cách tiếp cận nào trong ba, (1A, 1B hoặc 2) là "tiêu chuẩn" hoặc bạn muốn giới thiệu?
  • Phương pháp nào giới thiệu sai số nhỏ nhất hoặc ổn định nhất?
  • Tôi nghĩ rằng tôi có thể tự thực hiện phương pháp tiếp cận tế bào ma, tuy nhiên, làm thế nào phương pháp ngoại suy có thể được thực hiện, phương pháp này có tên không?
  • Có sự khác biệt về độ ổn định giữa việc khớp hàm tuyến tính hay phương trình bậc hai không?

Phương trình cụ thể

Tôi muốn áp dụng ranh giới này cho phương trình khuếch tán (ở dạng bảo tồn) với thuật ngữ nguồn phi tuyến tính,

ut=aux+duxx+s(x,u,t)

Phân biệt phương trình này trên lưới trên bằng cách sử dụng -method,θ

wjn+1θrawj1n+1θrbwjn+1θrcwj+1n+1=wjn+(1θ)rawj1n+(1θ)rbwjn+(1θ)rcwj+1n+s(xj,tn)

Tuy nhiên, đối với điểm biên ( ) tôi thích sử dụng sơ đồ hoàn toàn ẩn ( θ = 1 ) để giảm độ phức tạp,j=1θ=1

w1n+1raw0n+1rbw1n+1rcw2n+1=w1n+s1n

Lưu ý điểm ma , điều này sẽ được loại bỏ bằng cách áp dụng điều kiện biên.w0n+1

Các hệ số có định nghĩa,

ra=Δthj(ahj2h+dh)

rb=Δthj(a2[hj1hhj+1h+]+d[1h1h+])

rc=Δthj(ahj2h++dh+)

Tất cả các biến " " được định nghĩa như trong sơ đồ trên. Cuối cùng, Δh là bước thời gian (NBđây là mộtđơn giảntrường hợp với hằng số một d hệ số, trong thực tế các " r " hệ số là hơi phức tạp hơn vì lý do này).Δtadr


1
Cuốn sách gần đây hơn của LeVeque về các phương pháp khối lượng hữu hạn ủng hộ các tế bào ma, do tính đơn giản của chúng khi thực hiện, nhưng tôi không nhớ lại cuộc thảo luận về các thuật ngữ lỗi.
Geoff Oxberry

Bạn có thể đặt các phương trình bạn muốn giải quyết? Con đường để đi cũng sẽ phụ thuộc vào vấn đề. Ví dụ, có thể là do phần 'Neumann', các điều kiện biên giống như được giải quyết một cách tự nhiên trong công thức rời rạc.
Tháng giêng

@GeoffOxberry cảm ơn vì lời đề nghị. Tôi hạnh phúc khi sử dụng tế bào ma, tôi sẽ thử và thực hiện theo cách đó.
tẩy chay

@Jan Ban đầu tôi tránh đặt các phương trình xuống vì sự phức tạp do sự phân biệt lưới không đồng nhất, nhưng tôi chỉ cập nhật câu hỏi với các chi tiết này. Đây là một vấn đề khuếch tán-khuếch tán. Tôi không chắc chắn những gì bạn có nghĩa là "giải quyết tự nhiên".
tẩy chay

Giống như Neumann bc's được giải quyết một cách tự nhiên trong các chương trình FEM cho, ví dụ, eqn của Poisson. Đối với FVM tôi nghĩ đến: Hãy xem xét ô đầu tiên . Nếu bạn có một giá trị cho u x0hdx(mộtbạn+dbạnx)dx= =(mộtbạn+dbạnx)|x= =h1-(mộtbạn+dbạnx)|x= =0= =Sbạnxtrên ranh giới, không cần phải rời rạc nó.
ngày

Câu trả lời:


9

Đây là một nhận xét chung về FVM hơn là một câu trả lời cho các câu hỏi cụ thể. Và tin nhắn là không nên có sự phân biệt đối xử như vậy đối với các điều kiện biên.

Không giống như trong các phương thức FE hoặc FD, trong đó điểm bắt đầu là một ansatz riêng cho giải pháp, cách tiếp cận FVM để lại giải pháp không bị ảnh hưởng (lúc đầu) nhưng trung bình trên một phân đoạn của miền. Sự rời rạc của giải pháp chỉ phát huy tác dụng khi hệ thống phương trình cân bằng thu được được chuyển thành hệ phương trình đại số bằng cách xấp xỉ các từ thông trên các giao diện.

Theo nghĩa này, theo quan điểm của các điều kiện biên, tôi khuyên nên bám vào dạng liên tục của giải pháp càng lâu càng tốt và chỉ đưa ra các xấp xỉ rời rạc ở cuối.

Nói, phương trình giữ trên toàn bộ miền. Sau đó, nó giữ tên miền phụ [ 0 , h 1 ) và tích hợp trong không gian cho h 1 0

bạnt= =-mộtbạnx+dbạnxx+S(x,bạn,t)
[0,h1)
0h1bạntdx= =0h1x(-mộtbạn+dbạnx)dx+0h1S(x,bạn,t)dx= =(-mộtbạn+dbạnx)|x= =h1-(-mộtbạn+dbạnx)|x= =0+0h1S(x,bạn,t)dx,
bạn .

CTôibạnbạn(t,x)|CTôi= =bạnTôi(t)u(xi)uiux|hiuiui+1u

(au+dux)|x=0u

  • u|x=0=gDu0u1gD

  • ux|x=0=gNu0bạn1gN

  • (au+dux)|x=0=gR , không cần phải phân biệt.

Tuy nhiên, tôi không chắc chắn, phải làm gì trong trường hợp có loại bc của Robin không khớp trực tiếp với thông lượng. Điều này, sẽ cần một số chính quy vì sự gián đoạn của các tham số khuếch tán và khuếch tán.


===> Một số suy nghĩ cá nhân về FVM <===

  • FVM không phải là một FDM được chia tỷ lệ, vì các ví dụ về phương trình PoD của 1D trên lưới thông thường thường đề xuất
  • Không nên có một lưới trong FVM, nên có các ô có giao diện và, nếu cần, các trung tâm
  • Đó là lý do tại sao tôi nghĩ rằng một công thức stprint của sự rời rạc là không phù hợp
  • Việc lắp ráp hệ phương trình nên được thực hiện theo cách tiếp cận riêng biệt, tức là bằng cách lặp qua các ô thay vì xác định một phương trình cho mọi ẩn số. Ý tôi là nghĩ vềTôi- hàng thứ nhất của ma trận hệ số là một phần của vấn đề đặt ra trên ô ΩTôi, thay vì phương trình được liên kết với bạnTôi.
  • Điều này đặc biệt quan trọng đối với các sự cố 2D hoặc 3D nhưng cũng có thể giúp có một ký hiệu rõ ràng trong 1D: Tạo sự khác biệt giữa âm lượng (trong 1D: chiều dài) của ô, tại đây hTôivà khoảng cách giữa các trung tâm, có thể trong 1D: dTôi: =dTôi,Tôi+1= =|xTôi-xTôi+1|.


Cảm ơn sự hướng dẫn của bạn trong khi tôi đang tìm hiểu về phương pháp này. Có lẽ tôi cũng có thể chia sẻ suy nghĩ của mình. Tôi đồng ý tốt nhất là nói với biểu mẫu FVM càng lâu càng tốt; đặc biệt cho các điều kiện biên như bạn đã chỉ ra! Nhưng tôi nghĩ nó rất hữu ích khi thực hiện để viết phương trình ở dạng ma trận; đó là một ký hiệu chính xác và rõ ràng. Ngoài ra, tính ổn định và các thuộc tính số khác phụ thuộc rất nhiều vào cách giải quyết vấn đề (đối với FVM, điều này có nghĩa là làm thế nào các thông lượng của một mặt ô được xấp xỉ). Về mặt đó, tôi thích một phương trình ma trận, lặp đi lặp lại trên các ô.
boyfarrell

Có lẽ điểm cuối cùng của tôi là mơ hồ. Cuối cùng, bạn sẽ có một ma trận hệ số và một vectơ biến. Tôi sẽ chỉnh sửa bài viết của mình. Tôi đã quan tâm nhiều hơn đến việc diễn giải hơn là thực sự làm.
Jan

Tuyệt vời, tôi hiểu quan điểm của bạn. Cảm ơn.
boyfarrell
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.