Cách xây dựng ma trận khối gộp trong FEM


11

Khi giải PDE phụ thuộc thời gian bằng phương pháp phần tử hữu hạn, ví dụ như phương trình nhiệt, nếu chúng ta sử dụng bước thời gian rõ ràng thì chúng ta phải giải hệ phương trình tuyến tính do ma trận khối. Ví dụ: nếu chúng ta gắn bó với ví dụ phương trình nhiệt,

ut=c2u

sau đó sử dụng Euler chuyển tiếp, chúng tôi nhận được

M(un+1undt)=cKun

và do đó, mặc dù chúng tôi đang sử dụng sơ đồ bước thời gian rõ ràng, chúng tôi vẫn phải giải quyết một hệ thống tuyến tính. Đây rõ ràng là một vấn đề lớn vì lợi thế chính của việc sử dụng các sơ đồ rõ ràng là KHÔNG phải giải quyết một hệ thống tuyến tính. Tôi đã đọc rằng một cách phổ biến để giải quyết vấn đề này là thay vào đó sử dụng ma trận khối "gộp" để biến ma trận khối thông thường (nhất quán?) Thành ma trận đường chéo và do đó biến nghịch đảo thành tầm thường. Tuy nhiên, khi thực hiện tìm kiếm google, tôi vẫn không hoàn toàn chắc chắn làm thế nào ma trận khối gộp này được tạo ra. Ví dụ, nhìn vào anh ta giấy TRẢI NGHIỆM SỐ MỘT SỐ MÔI TRƯỜNG CHO THIẾT BỊ TƯ VẤNbởi Edson Wendland Harry và Edmar Schulz, họ tạo ra ma trận khối gộp của mình bằng cách đơn giản là tổng hợp tất cả các hệ số lên đường chéo. Vì vậy, ví dụ nếu ma trận khối lượng nhất quán ban đầu của chúng tôi là:

(4212242112422124)

thì ma trận khối gộp sẽ là:

(9000090000900009)

Câu hỏi của tôi là: Đây có phải là cách chính xác để hình thành ma trận khối gộp? Những bất lợi tồn tại khi sử dụng ma trận khối gộp thay vì ma trận khối lượng nhất quán đầy đủ về độ chính xác? Các tác giả của bài báo mà tôi đề cập thực sự đề nghị không sử dụng ma trận khối gộp, mặc dù có vẻ như họ chỉ sử dụng sơ đồ bước thời gian ngầm mà tôi nghĩ là kỳ quặc vì lý do chính để sử dụng ma trận như vậy là cho các phương pháp rõ ràng.

Lưu ý: Tôi sẽ không bao giờ sử dụng Euler chuyển tiếp để giải phương trình nhiệt, đó chỉ là một ví dụ. Ngoài ra, nếu vấn đề của tôi là giải các phương trình Navier Stokes trong đó thuật ngữ phi tuyến được xử lý rõ ràng và thuật ngữ khuếch tán được xử lý ngầm.

Cảm ơn


1
Theo như tôi hiểu, ma trận khối không đổi theo thời gian, do đó bạn chỉ cần thực hiện một nhân tố LU, và sau đó công việc còn lại sẽ là các thao tác ở các phía bên phải khác nhau, điều này dường như không phù hợp, vì dù sao bạn cũng đang làm một cái gì đó tương tự với bội số ma trận-vector. O(n2)
Geoff Oxberry

Có, tôi có thể làm điều đó nếu tôi đang sử dụng một bộ giải trực tiếp, nhưng nếu tôi đang sử dụng PCG hoặc một số bộ giải lặp khác, tôi không nghĩ rằng nó sẽ có ích
James

2
Cá nhân tôi không tin tưởng khối lượng lớn về mặt toán học. Về mặt tính toán, nó không mang lại cho bạn bất kỳ lợi thế nào trừ khi bạn nhắm đến bước thời gian rõ ràng, trong trường hợp đó, ma trận khối chéo giúp giải quyết dễ dàng hơn nhiều. Nếu bạn đang sử dụng một phương pháp bước thời gian ngầm định, bạn sẽ không nhận được bất kỳ sự thưa thớt nào trong ma trận. Tôi nghĩ rằng bạn chỉ nhận được lỗi tại thời điểm đó bằng cách không sử dụng một ma trận nhất quán.
Paul

Tôi ngạc nhiên không ai đề cập đến phương pháp Fried và Markus (1975) cho các tứ giác, trong đó sử dụng các nút tại các điểm lobatto để tránh mất lỗi cắt ngắn. Không phải là một vấn đề cho đến khi bạn có được hình khối, nhưng loại trừ các yếu tố serendipity. Ý tưởng đã được mở rộng thành hình tam giác, nhưng đòi hỏi một cơ sở và hình cầu đặc biệt.
L. Trẻ

Câu trả lời:


12

Tôi không nghĩ rằng có một câu trả lời chắc chắn cho vấn đề này, bởi vì nó có thể thay đổi từ chủ đề này sang chủ đề khác (và cũng phụ thuộc vào loại yếu tố bạn đang sử dụng). Có một số bài báo gần đây nói về điều đó, cũng [2]. Vì vậy, nó không phải là một cuộc thảo luận kín. Hơn nữa, bạn có thể có các thành phần quán tính khác nhau (ít nhất là trong cơ học), khi bạn có các phần tử với các ràng buộc động học như dầm hoặc vỏ.

Zienkiewicz (Xem [1], phần 16.2.4) thảo luận về ba phương pháp để bỏ ma trận khối

  1. Phương thức tổng hàng

    Mii(lumped)=jMij
  2. Chia tỷ lệ đường chéo với được điều chỉnh để thỏa mãn . c Σ j M ( gộp ) j j = Ω ρ d Ω

    Mii(lumped)=cMii
    cjMjj(lumped)=ΩρdΩ
  3. Đánh giá bằng cách sử dụng một phương trình bậc hai chỉ liên quan đến các điểm nút và do đó tự động thu được ma trận đường chéo cho hàm hình dạng phần tử tiêu chuẩn trong cho , .N i = 0 x = x j i jMNi=0x=xjij

Không phải tất cả các phương thức đều hoạt động trong tất cả các trường hợp, ví dụ, phương thức tổng hàng không hoạt động đối với các phần tử serendipity 8 nút vì nó sẽ dẫn đến các khối âm.

Tôi đã sử dụng phương thức 2 với yếu tố là tổng khối lượng của phần tử ( ) chia cho dấu vết của ma trận ( ), tức là T r ( M )MtotTr(M)

Mii(lumped)=MtotTr(M)Mii(no summation on i).

Tôi cũng đã sử dụng phương pháp 3 với cái gọi là Phương pháp phần tử quang phổ với các nút lobatto (sử dụng các vị trí này làm nút và điểm tích hợp), tự động dẫn đến ma trận đường chéo.

Từ [1], bạn có thể thấy hình này mô tả một số phương thức cho một số loại phần tử Khối lượng lớn cho một số yếu tố hữu hạn hai chiều

Người giới thiệu

[1] Zhu, J., ZRL Taylor và OC Zienkiewicz. "Phương pháp phần tử hữu hạn: cơ sở và nguyên tắc cơ bản của nó." (2005): 54-102.

[2] Felippa, Carlos A., Qiong Guo và Công viên KC. "Mẫu ma trận khối: Mô tả chung và ví dụ 1d." Lưu trữ các phương pháp tính toán trong kỹ thuật 22.1 (2015): 1-65.

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.