Interactive tool · Meshfree methods · NURBS
2D NDM Explorer
About this tool
The NURBS-Divergence-Meshless method: the divergence theorem turns the heat equation over each cell into four line integrals, and NURBS make every cell a rectangle in the parameter space, so each normal is simply (0, ±1) or (±1, 0). Inspect the equation of any cell, switch between MLS and RBF, let the cells overlap, and compare the accuracy with finite elements.
Alatan interaktif · Meshfree methods · NURBS
2D NDM Explorer
Tentang alatan ini
Kaedah NURBS-Divergence-Meshless: teorem divergence menukar persamaan haba bagi setiap cell kepada empat line integral, dan NURBS menjadikan setiap cell segi empat tepat dalam ruang parameter, jadi setiap normal hanyalah (0, ±1) atau (±1, 0). Teliti persamaan mana-mana cell, tukar antara MLS dan RBF, biarkan cell bertindih, dan bandingkan ketepatannya dengan finite element.
Loading the interactive tool…Memuatkan alatan interaktif…
How the NDM method works
The NURBS-Divergence-Meshless method (Rasin et al., 2025) starts from steady heat conduction, k∇²T + Q = 0, and does not use a weak form. Each node gets a cell, the equation is integrated over the cell, and the divergence theorem turns the area integral into the flux through the cell boundary:
The cells are drawn in the NURBS parameter space, where they are rectangles. On each side one component of the outward normal is ±1 and the other is 0, so the boundary integral splits into four line integrals along the sides (the paper’s Eq. 8):
G11 = (xη² + yη²) / |J| G12 = −(xξxη + yξyη) / |J| G22 = (xξ² + yξ²) / |J|
The G terms carry the whole geometry, taken from the derivatives of the NURBS map. Each side integral is one-dimensional and uses 1, 3 or 5 Gauss–Legendre points. The cell inspector beside the parameter space shows the four integrals for the selected node, evaluated with the solution, and their sum.
- Approximation. T(ξ, η) = Σj Nj(ξ, η) Tj, built in the parameter space either by Moving Least Squares (quadratic basis, exponential weight e−(r/c)²) or by Gaussian radial basis functions, R = e−αc(r/dc)² with αc = 0.8, without polynomial terms, as in the paper.
- One row per node. n nodes give n cell equations, each assembled as one row of the matrix. The system is banded but not symmetric, so it is solved by LU factorisation with partial pivoting.
- Boundary conditions. On a prescribed-temperature edge the cell equation of a node is replaced by the condition itself, Σj Nj(xI) Tj = T̂. This direct imposition works even for MLS, whose shape functions do not interpolate, because nothing has to be integrated by parts (Li and Zhang, 2020). On a flux edge the prescribed flux replaces ∇T·n on the boundary side and moves to the right-hand side.
- Cells. Cells may overlap, or hold no node at all, and each still gives a valid balance equation. The paper finds that overlapping cells converge at a slightly lower rate.
Choices in this tool: the support is a circle of radius d = αh in the parameter space (the paper uses the knot span); the MLS weight uses c = 0.3 d; the RBF uses dc = 2d; side integrals are split at the knot lines, and supports stop at C⁰ knot lines; k = 1 W/(m·K), which reproduces the paper’s fan-blade temperatures.
Things to try
- Tap a node in the radial-flow problem and read its cell equation: the heat crosses the two radial sides (about ±2.5) and almost none crosses the two angular sides. The sum of the four is zero to round-off.
- Tap a node on the outer arc. Its row is the boundary condition, and with MLS its own shape function is only about 0.7 there (about 0.58 for an interior node), yet T at that node is exactly 30 °C.
- Open the patch test: NDM-MLS recovers the quadratic temperature to about 10−14, even with one Gauss point per side, overlapping cells or irregular nodes. Switch to RBF and it no longer does.
- Run the comparison. NDM-MLS converges at a rate of about 2.5, overlapping cells at about 2, bilinear Q4 at about 1, while the Gaussian RBF stalls once the nodes become dense.
- Open the fan blade. At refinement 6 (91 nodes) NDM-MLS is within about 0.02% of the paper’s converged hub temperature, and Q4 on the same nodes within about 0.12%. Let the cells overlap and the error grows to about 0.2%.
- Change the Gauss points per side from 5 to 1. The fluxes along these short sides are nearly linear, so the answer hardly changes, as the paper also found.
- Show the knot lines on the fan blade and inspect a cell that straddles the bold line ξ = 0.5: its side integrals are split at the knot, and the supports on either side stop there.
Bagaimana kaedah NDM berfungsi
Kaedah NURBS-Divergence-Meshless (Rasin et al., 2025) bermula daripada konduksi haba mantap, k∇²T + Q = 0, dan tidak menggunakan weak form. Setiap nod diberi satu cell, persamaan dikamir ke atas cell itu, dan teorem divergence menukar kamiran luas kepada fluks merentasi sempadan cell:
Cell dilukis dalam ruang parameter NURBS, di mana ia berbentuk segi empat tepat. Pada setiap sisi, satu komponen normal luar ialah ±1 dan satu lagi 0, jadi kamiran sempadan terpecah kepada empat line integral sepanjang sisi (Pers. 8 dalam paper):
G11 = (xη² + yη²) / |J| G12 = −(xξxη + yξyη) / |J| G22 = (xξ² + yξ²) / |J|
Sebutan G membawa seluruh maklumat geometri, diambil daripada terbitan pemetaan NURBS. Setiap kamiran sisi adalah satu dimensi dan menggunakan 1, 3 atau 5 titik Gauss–Legendre. Pemeriksa cell di sebelah ruang parameter menunjukkan empat kamiran bagi nod terpilih, dinilai dengan penyelesaian, serta jumlahnya.
- Approximation. T(ξ, η) = Σj Nj(ξ, η) Tj, dibina dalam ruang parameter sama ada dengan Moving Least Squares (basis kuadratik, weight eksponen e−(r/c)²) atau dengan radial basis functions Gaussian, R = e−αc(r/dc)² dengan αc = 0.8, tanpa sebutan polinomial, seperti dalam paper.
- Satu baris setiap nod. n nod memberi n persamaan cell, setiap satu dipasang sebagai satu baris matriks. Sistemnya berjalur tetapi tidak simetri, jadi ia diselesaikan dengan pemfaktoran LU dengan partial pivoting.
- Syarat sempadan. Pada sisi bersuhu tetap, persamaan cell bagi nod digantikan dengan syarat itu sendiri, Σj Nj(xI) Tj = T̂. Pengenaan terus ini berfungsi walaupun untuk MLS, yang shape functions-nya tidak menginterpolasi, kerana tiada apa yang perlu dikamir secara bahagian (Li dan Zhang, 2020). Pada sisi fluks, fluks yang ditetapkan menggantikan ∇T·n pada sisi sempadan dan berpindah ke sebelah kanan persamaan.
- Cell. Cell boleh bertindih, atau tidak mengandungi sebarang nod, dan setiap satu tetap memberi persamaan keseimbangan yang sah. Paper mendapati cell bertindih converge pada kadar yang sedikit lebih rendah.
Pilihan dalam tool ini: support ialah bulatan berjejari d = αh dalam ruang parameter (paper menggunakan knot span); weight MLS menggunakan c = 0.3 d; RBF menggunakan dc = 2d; kamiran sisi dipecahkan pada knot lines, dan support berhenti pada knot lines C⁰; k = 1 W/(m·K), yang menghasilkan semula suhu bilah kipas dalam paper.
Cubaan untuk anda
- Ketik satu nod dalam masalah aliran jejarian dan baca persamaan cell-nya: haba merentasi dua sisi jejarian (kira-kira ±2.5) dan hampir tiada yang merentasi dua sisi sudut. Jumlah keempat-empatnya sifar hingga ralat pembundaran.
- Ketik satu nod pada lengkok luar. Barisnya ialah syarat sempadan, dan dengan MLS shape function-nya sendiri hanya kira-kira 0.7 di situ (kira-kira 0.58 bagi nod dalaman), namun T pada nod itu tepat 30 °C.
- Buka patch test: NDM-MLS memperoleh semula suhu kuadratik hingga kira-kira 10−14, walaupun dengan satu Gauss point setiap sisi, cell bertindih atau nod tidak sekata. Tukar kepada RBF dan ia tidak lagi berbuat demikian.
- Jalankan perbandingan. NDM-MLS converge pada kadar kira-kira 2.5, cell bertindih kira-kira 2, bilinear Q4 kira-kira 1, manakala RBF Gaussian terhenti apabila nod menjadi padat.
- Buka bilah kipas. Pada refinement 6 (91 nod), NDM-MLS berada dalam lingkungan kira-kira 0.02% daripada suhu hab converged dalam paper, dan Q4 pada nod yang sama dalam lingkungan kira-kira 0.12%. Biarkan cell bertindih dan ralat meningkat kepada kira-kira 0.2%.
- Ubah Gauss points setiap sisi dari 5 ke 1. Fluks sepanjang sisi pendek ini hampir linear, jadi jawapan hampir tidak berubah, seperti yang turut didapati dalam paper.
- Paparkan knot lines pada bilah kipas dan periksa cell yang merentasi garis tebal ξ = 0.5: kamiran sisinya dipecahkan pada knot itu, dan support di kedua-dua belah berhenti di situ.
Related reading
Code
Tool
Tool
Runs entirely in your browser; nothing is sent anywhere. Source code: github.com/RazinUTM/rz-tools. Spotted a bug or have an idea for a tool? Email arazin@utm.my.
Bacaan berkaitan
Kod
Alatan
Alatan
Berjalan sepenuhnya dalam pelayar anda; tiada data dihantar ke mana-mana. Kod sumber: github.com/RazinUTM/rz-tools. Jumpa pepijat atau ada idea untuk alatan baharu? E-mel arazin@utm.my.
Recent Comments