chunkie examples#
An interactive companion to chunkie — a MATLAB package for boundary integral equations in two dimensions. Everything here runs in your browser through numbl: pick a script on the left and click Run.
Every script begins with
mip load --install magland/magland/chunkie
which fetches chunkie on first use.
Geometry#
chunkie represents a curve as a chunker: a panelization into high-order
Gauss-Legendre chunks.
chunkie_ex01_circle.m— chunk up a circle; plot points and normals.chunkie_ex02_bymode.m— a star-shaped curve from a Fourier series for the radius.chunkie_ex03_starfish.m— the classic starfish.chunkie_ex04_chunkerfit.m— fit a smooth curve to sample points (chunkerfit).chunkie_ex05_barbell.m— a rounded polygon (chunkerpoly).chunkie_ex06_combined.m— transform and merge several curves into one multi-component domain.chunkie_ex07_interior.m— find which points lie inside a domain (chunkerinterior).
Solving integral equations#
Each PDE is recast as a boundary integral equation, discretized with
chunkermat, solved with GMRES, and evaluated on a grid with
chunkerkerneval.
chunkie_ex00_starfish.m— Helmholtz scattering off a starfish (combined-field representation).chunkie_ex08_laplace.m— a Laplace Neumann problem (single-layer with nullspace regularization).chunkie_ex09_helmholtz.m— sound-soft Helmholtz scattering off a peanut.chunkie_ex10_stokes.m— Stokes flow through a multiply-connected pipe.
How it's deployed#
On every push to main, the workflow in
.github/workflows/deploy.yml bundles these
files with the numbl browser IDE and publishes the result to GitHub Pages. Edit
numbl-project.json to change the title or which file opens first.