Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

meta(grids): non-box domains and richer boundary conditions — geometry seam, mask, Robin, tensor diffusion

Đang mở
#80 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
25/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
julia
Lĩnh vực
backend

Hướng nghiên cứu

Start with sub-issue #69 and compare the listed geometry-seam options, using a convergence study to choose the approach that shapes #61. Read the linked sub-issues in order, keeping the uniform CartesianGrid scope and array-level leaf-body invariant in view. Done means the chosen design is justified and its effects on the mask, Robin, and tensor-diffusion work are clear; validate transpose behavior and per-cell operator diagonals on a small materialized problem.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

enhancement

Umbrella for the four issues that extend the package beyond "axis-aligned box, scalar κ, Dirichlet/Neumann/Periodic". The comment threads already tie them together: #61's binary mask is the φ ∈ {0,1} special case of #69's phase-field candidate; Robin on an irregular domain is #62 ∩ #69; #70's face-averaging policy depends on whether the coefficient Diffusion carries becomes φD.

Sub-issues, in order

  1. #62 — Robin BC on the six box faces. Self-contained; the per-face Field coefficient question is the real design call. Prior art for the irregular-domain version is shared with #69 option 4.
  2. #61 — active-cell mask on CartesianGrid. Unblocks the downstream microvascular model; per-cell operator_diagonal has a closed form under mirroring. Not blocked by #69: every candidate seam needs the mask — the staircase is the mask, a sharp-interface scheme like Shortley–Weller still needs the inside/outside cell classification, and phase-field needs it too because 1/φ blows up outside tissue, so φ must be floored or the domain masked anyway (see the #69 thread). #69's answer decides what goes on top of the mask, not whether to build it — but an active::Field{Bool} and a φ::Field{T} want to be the same seam, so #61 should not foreclose that.
  3. #70 stage 1 — anisotropic tensor diffusion: tensor_field, lift the two scalar-eltype guards. Can proceed at any time.
  4. #69 — design(grids): pick the non-box geometry seam — staircase mask vs phase-field vs Shortley–Weller (the issue body also weighs generalized FD and level-set). An investigation with a convergence study, not a build. Per the #69 thread, the staircase and phase-field sides of that study need no new leaves, so its cost is dominated by the sharp-interface option.
  5. #70 stages 2–3 — tensor face averaging, cross-derivative terms. These wait on #69 because the averaging policy for φD across a geometric interface differs from D across a fiber-orientation jump.

Invariants that bind every sub-issue

  • Leaf bodies stay array-level; a per-cell variable stencil is the thing to avoid, and an index-driven gather is the way to avoid it.
  • apply_adjoint! remains the exact discrete transpose, checked by ⟨Lx,y⟩ = ⟨x,Lᵀy⟩ on a materialized small problem. Corner ghosts on forests and slabs are garbage by design today; a cross-derivative leaf needs the corner-aware exchange before it touches those paths.
  • operator_diagonal becomes per-cell; multigrid depends on it.
  • Uniform CartesianGrid first for every item. Masked or tensor BlockForest / slabs are follow-ups.

—
🤖 Claude reshuffled this queue so the mask stops waiting on a decision that needs it anyway.
claude-opus-5-5[1m] (high) · claude-code 2.1.285 · unreviewed

Ngôn ngữ chính
Julia
Star
3
Fork
1
Merge trung bình
1 ngày 28 phút
Pull request đã merge (30 ngày)
6

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

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. 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.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của RallypointOne/MatrixFreeOperators.jl

Tất cả issue của RallypointOne/MatrixFreeOperators.jl

Issue tương tự

Thêm issue về Julia

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.