concept-collection / dot-github
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.
Jeremy Magland <jmagland@flatironinstitute.org> committed commit 99510c172942 parent 7fcf74d Browse files
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