Reorganize profile: lead with most interactive/visual demos
Order categories and items from most compelling (interactive samplers,
shared live views, 3D geometry apps, visual math) down to utilities,
datasets, and templates. All 29 entries preserved.
1 changed file+94−94
profile/README.mdmodified+94−94View file
@@ -4,47 +4,53 @@ A set of small, independent projects: interactive demos, teaching material, and
44 research code. Most run directly in the browser with nothing to install, and
55 many are written in MATLAB syntax and run there via [numbl](https://numbl.org).
66
7-Projects are grouped below by **application area** — physics, numerical methods,
8-data compression, neurophysiology, visual math, and more — rather than by the
9-technology behind them. Each links to its repository, and to a live page where
10-there is one.
7+Projects are grouped below by **application area** — sampling, geometry and
8+meshing, visual math, neurophysiology, data compression, physics, and more —
9+rather than by the technology behind them. The most interactive and visual
10+demos come first; utilities, datasets, and templates are toward the end. Each
11+links to its repository, and to a live page where there is one.
1112
12-## Physics & quantum systems
13+## Monte Carlo & sampling
1314
14-- **[numbl-quantum-optics](https://github.com/concept-collection/numbl-quantum-optics)**
15- ([live](https://concept-collection.github.io/numbl-quantum-optics/)).
16- Runnable scripts accompanying the article "Quantum optics in MATLAB"
17- ([arXiv:2309.14354](https://arxiv.org/abs/2309.14354)), covering quantum
18- states, operators, and dynamics.
19-- **[numbl-open-quantum-systems](https://github.com/concept-collection/numbl-open-quantum-systems)**
20- ([live](https://concept-collection.github.io/numbl-open-quantum-systems/)).
21- Code from "Coding closed and open quantum systems in MATLAB"
22- ([arXiv:1911.04906](https://arxiv.org/abs/1911.04906)), including Ising
23- dynamics, cavity-QED phase transitions, and Lindblad and non-Markovian
24- evolution.
15+- **[hitandrun-interactive](https://github.com/concept-collection/hitandrun-interactive)**
16+ ([live](https://concept-collection.github.io/hitandrun-interactive/#figure/sampler)).
17+ Hit-and-run MCMC sampling of a 2-D convex region, with React driving a numbl
18+ script. Resample, make new regions, or play a step-by-step movie of the
19+ algorithm.
20+- **[walnuts-interactive](https://github.com/concept-collection/walnuts-interactive)**
21+ ([live](https://concept-collection.github.io/walnuts-interactive/#figure/sampler)).
22+ WALNUTS (the within-orbit adaptive leapfrog No-U-Turn Sampler) drawing from a
23+ 2-D banana target, with React driving a numbl script. Tune the leapfrog step
24+ and error tolerance, or play a step-by-step movie of the orbit-building.
25+- **[stan-web-ide](https://github.com/concept-collection/stan-web-ide)**
26+ ([live](https://concept-collection.github.io/stan-web-ide/)).
27+ Run [Stan](https://mc-stan.org) sampling in your browser, in a VS Code-style
28+ IDE.
29+
30+## Peer-to-peer shared state
31+
32+- **[hitandrun-commonview](https://github.com/concept-collection/hitandrun-commonview)**
33+ ([live](https://concept-collection.github.io/hitandrun-commonview/)).
34+ The hit-and-run figure with a single live view shared by all visitors over a
35+ WebRTC mesh; one peer runs the sampler via numbl and broadcasts to the rest.
36+- **[commonview](https://github.com/concept-collection/commonview)**
37+ ([live](https://concept-collection.github.io/commonview/)).
38+ A minimal peer-to-peer page where every visitor shares one state (a counter):
39+ nostr discovery, a WebRTC mesh, and a central-peer authority. The basis for
40+ hitandrun-commonview.
2541
2642 ## Geometry, meshing & PDE solvers
2743
28-- **[numbl-distmesh](https://github.com/concept-collection/numbl-distmesh)**
29- ([live](https://concept-collection.github.io/numbl-distmesh/)).
30- Every example from Persson and Strang's
31- [DistMesh](https://github.com/popersson/DistMesh), meshing 2-D regions and
32- surfaces from signed distance functions.
33-- **[numbl-surfacefun-intro](https://github.com/concept-collection/numbl-surfacefun-intro)**
34- ([live](https://concept-collection.github.io/numbl-surfacefun-intro/)).
35- An introduction to [surfacefun](https://github.com/danfortunato/surfacefun),
36- which computes with functions on surfaces and solves PDEs on them to high
37- order.
3844 - **[surfacefun-interactive](https://github.com/concept-collection/surfacefun-interactive)**
3945 ([live](https://concept-collection.github.io/surfacefun-interactive/)).
4046 surfacefun demos with live sliders, where React and three.js drive a numbl
4147 script. Refine a cubed-sphere mesh or scale a tangent vector field and watch
4248 it update.
43-- **[numbl-chunkie](https://github.com/concept-collection/numbl-chunkie)**
44- ([live](https://concept-collection.github.io/numbl-chunkie/)).
45- Examples for [chunkie](https://github.com/fastalgorithms/chunkie): building
46- chunker geometries in 2-D and solving Laplace, Helmholtz, and Stokes boundary
47- integral equations.
49+- **[mesh-studio](https://github.com/concept-collection/mesh-studio)**
50+ ([live](https://concept-collection.github.io/mesh-studio/)).
51+ Build CAD primitives or import STEP/IGES with
52+ [OpenCASCADE.js](https://ocjs.org/), then inspect them in 3D — including each
53+ face's true NURBS surface (polynomials on faces), not just its triangulation.
4854 - **[mesh-converter](https://github.com/concept-collection/mesh-converter)**
4955 ([live](https://concept-collection.github.io/mesh-converter/)).
5056 Convert meshes between 19 formats (PLY, OBJ, STL, VTK, Gmsh, XDMF, …) with
@@ -55,68 +61,44 @@ there is one.
5561 Upload a quad surface mesh and solve Poisson or Helmholtz problems on it
5662 with [surfacefun](https://github.com/danfortunato/surfacefun), entirely in
5763 the browser; the solution renders in a rotatable 3D view.
58-- **[mesh-studio](https://github.com/concept-collection/mesh-studio)**
59- ([live](https://concept-collection.github.io/mesh-studio/)).
60- Build CAD primitives or import STEP/IGES with
61- [OpenCASCADE.js](https://ocjs.org/), then inspect them in 3D — including each
62- face's true NURBS surface (polynomials on faces), not just its triangulation.
63-- **[abc-step-1000](https://github.com/concept-collection/abc-step-1000)**
64- ([live](https://concept-collection.github.io/abc-step-1000/)).
65- The first 1000 STEP files from the
66- [ABC dataset](https://deep-geometry.github.io/abc-dataset/) of CAD models
67- (Koch et al., CVPR 2019), served gzip-compressed with a JSON manifest for
68- direct download.
6964 - **[qhull-wasm-demo](https://github.com/concept-collection/qhull-wasm-demo)**
7065 ([live](https://concept-collection.github.io/qhull-wasm-demo/)).
7166 Demos and benchmarks for [qhull-wasm](https://github.com/magland/qhull-wasm),
7267 which compiles [Qhull](http://www.qhull.org) to WebAssembly. Includes 2-D
7368 Delaunay triangulation, 3-D convex hull, and a Delaunay benchmark with
7469 matching scripts for MATLAB, Octave, and numbl.
70+- **[numbl-distmesh](https://github.com/concept-collection/numbl-distmesh)**
71+ ([live](https://concept-collection.github.io/numbl-distmesh/)).
72+ Every example from Persson and Strang's
73+ [DistMesh](https://github.com/popersson/DistMesh), meshing 2-D regions and
74+ surfaces from signed distance functions.
75+- **[numbl-surfacefun-intro](https://github.com/concept-collection/numbl-surfacefun-intro)**
76+ ([live](https://concept-collection.github.io/numbl-surfacefun-intro/)).
77+ An introduction to [surfacefun](https://github.com/danfortunato/surfacefun),
78+ which computes with functions on surfaces and solves PDEs on them to high
79+ order.
80+- **[numbl-chunkie](https://github.com/concept-collection/numbl-chunkie)**
81+ ([live](https://concept-collection.github.io/numbl-chunkie/)).
82+ Examples for [chunkie](https://github.com/fastalgorithms/chunkie): building
83+ chunker geometries in 2-D and solving Laplace, Helmholtz, and Stokes boundary
84+ integral equations.
85+- **[abc-step-1000](https://github.com/concept-collection/abc-step-1000)**
86+ ([live](https://concept-collection.github.io/abc-step-1000/)).
87+ The first 1000 STEP files from the
88+ [ABC dataset](https://deep-geometry.github.io/abc-dataset/) of CAD models
89+ (Koch et al., CVPR 2019), served gzip-compressed with a JSON manifest for
90+ direct download.
7591
76-## Monte Carlo & sampling
77-
78-- **[hitandrun-interactive](https://github.com/concept-collection/hitandrun-interactive)**
79- ([live](https://concept-collection.github.io/hitandrun-interactive/#figure/sampler)).
80- Hit-and-run MCMC sampling of a 2-D convex region, with React driving a numbl
81- script. Resample, make new regions, or play a step-by-step movie of the
82- algorithm.
83-- **[walnuts-interactive](https://github.com/concept-collection/walnuts-interactive)**
84- ([live](https://concept-collection.github.io/walnuts-interactive/#figure/sampler)).
85- WALNUTS (the within-orbit adaptive leapfrog No-U-Turn Sampler) drawing from a
86- 2-D banana target, with React driving a numbl script. Tune the leapfrog step
87- and error tolerance, or play a step-by-step movie of the orbit-building.
88-
89-- **[stan-web-ide](https://github.com/concept-collection/stan-web-ide)**
90- ([live](https://concept-collection.github.io/stan-web-ide/)).
91- Run [Stan](https://mc-stan.org) sampling in your browser, in a VS Code-style
92- IDE.
93-
94-## Peer-to-peer shared state
95-
96-- **[commonview](https://github.com/concept-collection/commonview)**
97- ([live](https://concept-collection.github.io/commonview/)).
98- A minimal peer-to-peer page where every visitor shares one state (a counter):
99- nostr discovery, a WebRTC mesh, and a central-peer authority. The basis for
100- hitandrun-commonview.
101-- **[hitandrun-commonview](https://github.com/concept-collection/hitandrun-commonview)**
102- ([live](https://concept-collection.github.io/hitandrun-commonview/)).
103- The hit-and-run figure with a single live view shared by all visitors over a
104- WebRTC mesh; one peer runs the sampler via numbl and broadcasts to the rest.
105-
106-## Scientific data compression
92+## Number theory & visual math
10793
108-- **[benchcompress](https://github.com/concept-collection/benchcompress)**
109- ([results](https://concept-collection.github.io/benchcompress/),
110- [paper (WIP)](https://concept-collection.github.io/benchcompress/paper)).
111- A benchmarking framework that measures compression ratio and encode/decode
112- throughput for compression algorithms on scientific data arrays.
113-- **[ephys_compression_tests](https://github.com/concept-collection/ephys_compression_tests)**
114- ([results](https://concept-collection.github.io/ephys_compression_tests/)).
115- Compression benchmarks for electrophysiology recordings.
116-- **[ans-visualizer](https://github.com/concept-collection/ans-visualizer)**
117- ([live](https://concept-collection.github.io/ans-visualizer/)).
118- A step-by-step visualizer for the Asymmetric Numeral Systems (ANS)
119- entropy-coding algorithm ([Duda et al., 2015](https://ieeexplore.ieee.org/abstract/document/7170048)).
94+- **[finite-field-visualizer](https://github.com/concept-collection/finite-field-visualizer)**
95+ ([live](https://concept-collection.github.io/finite-field-visualizer/)).
96+ Color-coded multiplication tables over finite (prime) fields. Step through the
97+ primes to watch the structure change.
98+- **[gcd-visualizer](https://github.com/concept-collection/gcd-visualizer)**
99+ ([live](https://concept-collection.github.io/gcd-visualizer/)).
100+ A heatmap of the greatest common divisor of every pair (i, j), laid out as a
101+ color-coded table.
120102
121103 ## Neurophysiology data & remote access
122104
@@ -131,16 +113,34 @@ there is one.
131113 [DANDI Dandiset 000986](https://dandiarchive.org/dandiset/000986), a set of
132114 mouse auditory cortex recordings.
133115
134-## Number theory & visual math
116+## Scientific data compression
135117
136-- **[finite-field-visualizer](https://github.com/concept-collection/finite-field-visualizer)**
137- ([live](https://concept-collection.github.io/finite-field-visualizer/)).
138- Color-coded multiplication tables over finite (prime) fields. Step through the
139- primes to watch the structure change.
140-- **[gcd-visualizer](https://github.com/concept-collection/gcd-visualizer)**
141- ([live](https://concept-collection.github.io/gcd-visualizer/)).
142- A heatmap of the greatest common divisor of every pair (i, j), laid out as a
143- color-coded table.
118+- **[ans-visualizer](https://github.com/concept-collection/ans-visualizer)**
119+ ([live](https://concept-collection.github.io/ans-visualizer/)).
120+ A step-by-step visualizer for the Asymmetric Numeral Systems (ANS)
121+ entropy-coding algorithm ([Duda et al., 2015](https://ieeexplore.ieee.org/abstract/document/7170048)).
122+- **[benchcompress](https://github.com/concept-collection/benchcompress)**
123+ ([results](https://concept-collection.github.io/benchcompress/),
124+ [paper (WIP)](https://concept-collection.github.io/benchcompress/paper)).
125+ A benchmarking framework that measures compression ratio and encode/decode
126+ throughput for compression algorithms on scientific data arrays.
127+- **[ephys_compression_tests](https://github.com/concept-collection/ephys_compression_tests)**
128+ ([results](https://concept-collection.github.io/ephys_compression_tests/)).
129+ Compression benchmarks for electrophysiology recordings.
130+
131+## Physics & quantum systems
132+
133+- **[numbl-quantum-optics](https://github.com/concept-collection/numbl-quantum-optics)**
134+ ([live](https://concept-collection.github.io/numbl-quantum-optics/)).
135+ Runnable scripts accompanying the article "Quantum optics in MATLAB"
136+ ([arXiv:2309.14354](https://arxiv.org/abs/2309.14354)), covering quantum
137+ states, operators, and dynamics.
138+- **[numbl-open-quantum-systems](https://github.com/concept-collection/numbl-open-quantum-systems)**
139+ ([live](https://concept-collection.github.io/numbl-open-quantum-systems/)).
140+ Code from "Coding closed and open quantum systems in MATLAB"
141+ ([arXiv:1911.04906](https://arxiv.org/abs/1911.04906)), including Ising
142+ dynamics, cavity-QED phase transitions, and Lindblad and non-Markovian
143+ evolution.
144144
145145 ## Image processing
146146