Những thư viện nào có hỗ trợ cấp cao tốt cho multigrid?


17

Tôi dự định sử dụng multigrid để tính toán một số giá trị riêng và vectơ và tôi nhận thấy PETSc có hỗ trợ cấp cao cho multigrid. Tài liệu của PETSc nói rằng phần này của PETSc không nên được sử dụng, vì nó sẽ sớm được thay thế.

Những thư viện nào khác có hỗ trợ cấp cao cho multigrid, và khoảng bao lâu thì PETSc sẽ phát hành hỗ trợ multigrid mới?


2
MG mới có trong petc-dev và hoạt động, cũng như bộ giải GAMG mới. Chúng tôi đang chờ phát hành cho đến khi chúng tôi có thể thay đổi mọi ví dụ (và có hàng trăm). Bây giờ tôi sẽ bắt đầu sử dụng petc-dev.
Matt Knepley

Câu trả lời:


7

Cả PETSc và Trilinos đều có phương pháp đa đại số tốt.

deal.II thực hiện các phương pháp đa hình học cho sự phân biệt phần tử hữu hạn, xem ví dụ chương trình hướng dẫn bước 16 .


2
PETSc thực hiện MG hình học nếu bạn sử dụng lưới DMDA (Cartesian) kể từ đó chúng tôi biết cách xây dựng các bộ nội suy và các vấn đề thô.
Matt Knepley

11

PETSc multigrid (như một điều kiện tiên quyết) khá trưởng thành và có thể được sử dụng với bất kỳ bộ giải KSP (phương pháp lặp Krylov) nào trong PETSc bằng cách gõ:

-pc_type mg

Tuy nhiên, điều này đòi hỏi bạn phải có một số cách tạo mức độ thô, chẳng hạn như có các lưới có cấu trúc được xác định bởi các đối tượng PETSc DA, sẽ tự động được điều chỉnh.

Hoặc, nếu bạn muốn sử dụng đa đại số từ gói HYPRE, bạn có thể sử dụng

-pc_type hypre

Hoặc từ gói ML với

-pc_type ml

Chúng được tải xuống trong quá trình cấu hình bằng cách nối thêm

--download-hypre=1 --download-ml=1

đến dòng lệnh ./mình của bạn.

Phần bị khấu hao (hiện tại) là khung DMMG, được thay thế bằng bộ giải FAS SNES (phi tuyến) và hỗ trợ tốt hơn để xử lý các phân biệt đa cấp trong khi sử dụng MG hoặc FAS khi chúng ta nói. Sự thay thế khác (cho các vấn đề tuyến tính) là

-pc_type gamg -pc_gamg_type sa

Đây là một mã mới hơn, có nguồn gốc từ PETSc, đa đại số được làm mịn tổng hợp có thể mở rộng.

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.