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

Vector diffusion in corners

Đang mở
#167 1 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ó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
30/100
Loại issue
Lỗi
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Đình trệ
Công nghệ
cpp
Lĩnh vực
computer-graphics

Hướng nghiên cứu

Start by reproducing the corner outliers in the vertex-based connection Laplacian on the tessellated Bézier surface described in the issue. Check the mass matrix, Laplacian form and vertex tangent-basis alignment, then confirm that smoothing no longer produces anomalous corner values.

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

Mô tả

While attempting to smooth out vector and line fields (actually Hopf differentials of a tessellated Bézier surface) with the vertex-based connection Laplacian, I repeatedly found outlying values in boundary corners - as can be seen on these pictures, where Q (in red) is the original line field, while Q (smoothed) (in blue) is the result of 1 step of implicit smoothing with the usual h^2 timestep:

image
image

As far as I an tell, I weight everything correctly with the Mass matrix.
It happens whether or not the corner has a single "flapping" triangle.
I have no boundary conditions (so I guess I implicitly prescribe zero Neumann).

What could be the cause of this phenomenon?

Edit: Tried switching lumped mass matrix to Galerkin, weak Laplacian to strong form, as well as various timesteps (smaller/bigger than h^2, and also keeping it to unity) - the corners (and to a lesser extent boundaries) always stand out...

Edit 2: Also tried the uniform weights in place of cotans with and without degree-based mass - the issue remains.
I suspect the problem might be the alignment of the vertex tangent basis vectors: they are everywhere aligned with an outgoing halfedge, except at such corners.
image

image

Ngôn ngữ chính
C++
Star
1.3k
Fork
183
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

  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 nmwsharp/geometry-central

Tất cả issue của nmwsharp/geometry-central

Issue tương tự

Thêm issue về C++

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.