Một bộ giải mạnh mẽ, lặp đi lặp lại cho các vấn đề đàn hồi tuyến tính 3-d lớn là gì?


9

Tôi lặn vào thế giới hấp dẫn của phân tích phần tử hữu hạn và muốn giải quyết một vấn đề lớn nhiệt cơ khí (chỉ nhiệt cơ khí, không có thông tin phản hồi).

Đối với bài toán cơ học, tôi đã nắm bắt được từ câu trả lời của Geoff , rằng tôi sẽ cần sử dụng bộ giải lặp do kích thước của lưới của tôi. Tôi đọc thêm trong câu trả lời của Matt , rằng việc lựa chọn thuật toán lặp chính xác là một nhiệm vụ khó khăn.

Tôi đang hỏi ở đây liệu có tồn tại bất kỳ kinh nghiệm nào về các vấn đề đàn hồi tuyến tính 3 chiều lớn giúp tôi thu hẹp tìm kiếm cho hiệu suất tốt nhất không? Trong trường hợp của tôi, đó là một cấu trúc với các màng mỏng, có hoa văncác vật liệu được đặt không đều (cả CTE cao và CTE thấp). Không có biến dạng lớn trong phân tích cơ nhiệt này. Tôi có thể sử dụng HPC của trường đại học của mình [1.314 nút, với 2 bộ xử lý AMD Opteron (mỗi lõi 2.2 GHz / 8)].

Tôi nghĩ rằng PETSccó thể chứa một cái gì đó thú vị, đặc biệt là các thuật toán thực hiện một số loại phân tách miền (FETI, multigrid) nhưng tôi hơi bị choáng ngợp bởi các tùy chọn và không có kinh nghiệm. Tôi cũng thích cụm từ "điều kiện tiên quyết thông tin hình học" , nhưng không chắc chắn nếu điều này giúp tôi. Tôi chưa tìm thấy một cái gì đó tập trung vào cơ học liên tục tuyến tính.

Mở rộng quy mô mạnh (Amdahl) rất quan trọng trong ứng dụng của tôi vì các đối tác công nghiệp của tôi không thể chờ đợi lâu để có kết quả mô phỏng. Tôi chắc chắn không chỉ đánh giá cao câu trả lời, mà còn khuyến nghị để đọc thêm trong các ý kiến.


Bạn đang giải quyết vấn đề tĩnh? Có vẻ là có. Đối với các vấn đề năng động hoặc hài hòa thời gian, tôi nghĩ câu trả lời sẽ khác.
Hui Zhang

có Năng động là quá đắt.
Sebastian

Câu trả lời:


6

Giả sử rằng các cấu trúc của bạn thực sự là 3D (thay vì chỉ có các tính năng mỏng, có thể bị rời rạc với các yếu tố vỏ) và mô hình lớn hơn vài trăm nghìn dof, bộ giải trực tiếp trở nên không thực tế, đặc biệt nếu bạn chỉ cần giải quyết từng vấn đề một lần. Ngoài ra, trừ khi cấu trúc luôn "gần" với ranh giới Dirichlet, bạn sẽ cần một phương thức đa cấp để có hiệu quả. Cộng đồng được phân chia giữa "đa phân tách" và "phân rã miền đa cấp". Để so sánh toán học, hãy xem câu trả lời của tôi về: lợi thế của multigrid so với các điều kiện tiên quyết phân rã miền và ngược lại là gì?

Cộng đồng multigrid nói chung đã thành công hơn trong việc sản xuất phần mềm cho mục đích chung. Đối với độ co giãn, tôi khuyên bạn nên sử dụng tổng hợp được làm mịn đòi hỏi một "khoảng trống gần bằng" gần đúng. Trong PETSc, điều này được thực hiện bằng cách chọn PCGAMG hoặc PCML (cấu hình với --download-ml) và gọi MatSetNearNullSpace()để cung cấp các chế độ cơ thể cứng nhắc.

Các phương pháp phân rã miền cung cấp một cơ hội để coarsen nhanh hơn so với tập hợp được làm mịn, do đó có thể có độ trễ cao hơn, nhưng "điểm ngọt" về hiệu suất có xu hướng hẹp hơn so với tập hợp được làm mịn. Trừ khi bạn muốn nghiên cứu về các phương pháp phân rã miền, tôi khuyên bạn chỉ nên sử dụng tổng hợp được làm mịn và có thể thử phương pháp phân rã miền khi phần mềm trở nên tốt hơn.


cảm ơn rất nhiều vì câu trả lời rất nhiều thông tin này Chính xác thì bạn có ý gì khi gần với ranh giới Dirichlet ? Đóng về mặt yếu tố?
Sebastian

Đóng về khoảng cách, được đo bằng các phần tử hoặc tên miền phụ (đối với phân tách miền một cấp với các giải pháp tên miền phụ mạnh), dọc theo đường dẫn của vật liệu mạnh. Nếu thông tin phải đi qua nhiều tên miền phụ để xác định giải pháp cục bộ, các phương thức một cấp sẽ hội tụ chậm. Lưu ý rằng một kết nối mạnh là không đủ cho độ đàn hồi, tất cả các chế độ cơ thể cứng nhắc phải được kiểm soát.
Jed Brown

4

Tôi muốn nói rằng sự lựa chọn kinh điển cho vấn đề này sẽ là bộ giải Gradient Conjugate cộng với một điều kiện tiên quyết đa đại số. Đối với PETSc, hypre / boomeramg hoặc ML sẽ là lựa chọn tiền đề rõ ràng.

Tất cả các thành phần này khi được sử dụng thông qua PETSc có quy mô rất tốt cho hàng nghìn hoặc hàng chục nghìn bộ xử lý nếu sự cố đủ lớn (ít nhất ~ 100.000 độ tự do trên mỗi quy trình MPI).


Lưu ý rằng BoomerAMG (và cổ điển AMG nói chung) không sử dụng thông tin không gian rỗng hoặc đảm bảo rằng các không gian thô có thể biểu diễn chính xác các chế độ quay. Bạn có thể (và nên) thử nó, cũng như tách các thành phần và giải quyết chúng một cách riêng biệt (sử dụng PCFIELDSPLITtrong PETSc), nhưng tập hợp mịn thường mạnh mẽ hơn cho độ đàn hồi.
Jed Brown

1

<0,4(x,y,z)KxxKyyKzz

Trong trường hợp đó, bạn có thể sử dụng các phương pháp AMG kém tiên tiến hơn để tính xấp xỉ từng khối nghịch đảo và có được một điều kiện tiên quyết khá tốt.


1

Walter Landry đã phát triển một mã cho biến dạng elastostatic ba chiều bằng cách sử dụng multigrid thích nghi. Bạn có thể tìm thấy mã tại

https://bitbucket.org/wlandry/gamra

Bạn có thể bao gồm hiệu ứng của việc ép nhiệt với lực sinh thái đẳng hướng và lực cơ thể tương đương. Một khi những điều này được đưa ra, bộ giải sẽ hoạt động tốt.

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.