Compatible PRanges between FESpaces and linear systems
@JordiManyer đang làm issue này rồi.
Từ ngày 30/11/2023.
Đánh giá
Issue này chưa được đánh giá.
Mô tả
Here are some notes on the issue:
- In some specific scenarios (which are not as rare), owned rows of the matrix contain column identifiers from dofs which are NOT available in the local FESpaces. This means that we will never be able to 100% match the PRanges from the PSparseMatrix and the DistributedFESpace. (See Alberto's note)
- Moreover, when we assemble ghost rows we also include some column ids which are NOT needed to multiply the matrix by a column vector. We need this extra rows as cache for in-place assembly, but these extra ghosts should not be included when communicating during matrix-vector product.
- On top of this, it would be advantageous to reorder the dofs in the local FESpaces so that the dof layout contains owned ids first, then ghost ids. This is how we do things in the linear system, and would bring us on par with other softwares like PETSc.
Given these observations, we concluded the following:
- We need to re-order the ids in the local FESpaces. Hopefully, after doing so,
LocalViewtype wont be needed anymore. - We need to create a new type
FECompatiblePSparseMatrix, that contains- The usual matrix
- Caches for the ghosts values that the matrix column PRange needs
- Separate PRanges for matrix-vector multiplication and for assembly
- Ngôn ngữ chính
- Julia
- Star
- 150
- Fork
- 28
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của gridap/GridapDistributed.jl
-
A generic method of the abstract type DistributedDiscreteModel{Dc,Dp} directly accesses to a field name .face_gidsCó thể làm lại được @amartinhuertas đã nhận 122 ngày trước và không có pull request nào đang mở. Đang mở
gridap/GridapDistributed.jl#211 · 1 người được giao ·
-
Automatically add ghost cells to triangulation whenever a CellField is created out of a DistributedTriangulationCó thể làm lại được @JordiManyer đã nhận 155 ngày trước và không có pull request nào đang mở. Đang mở
gridap/GridapDistributed.jl#209 · 2 người được giao ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
gridap/GridapDistributed.jl#189 · 1 bình luận ·
-
Issue with DG-SIP and FullyAssembledRowsCó thể làm lại được @amartinhuertas đã nhận 360 ngày trước và không có pull request nào đang mở. Đang mở
gridap/GridapDistributed.jl#186 · 20 bình luận · 1 người được giao ·
-
Potential issue when interpolating DistributedCelllFields that are only defined on own cellsCó thể làm lại được @JordiManyer đã nhận 375 ngày trước và không có pull request nào đang mở. Đang mở
gridap/GridapDistributed.jl#184 · 1 bình luận · 2 người được giao ·
Tất cả issue của gridap/GridapDistributed.jl
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Out-of-place Rosenbrock time derivative uses the autodiff of the last CompositeAlgorithm memberĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
SciML/OrdinaryDiffEq.jl#4951 ·
Maintainer thường phản hồi trong vòng 5 ngày
-
`vect` rrule pullbacks index a thunked cotangent once per argument (quadratic), same pattern as #860Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
JuliaDiff/ChainRules.jl#862 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
osrep/Runes2P.jl#153 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
WaterLily-jl/WaterLily-Examples#49 · 1 bình luận ·