/ proof-of-concept / .mochi
Sign in
proof-of-concept / .mochi
.mochi / profile / README.md
154 lines · 8.4 KBCodeBlameHistory
e987b68Refine org profile README wordingJeremy Magland 3A set of small, independent projects: interactive demos, teaching material, and
7978becReorganize profile README by application areaJeremy Magland 4research code. Most run directly in the browser with nothing to install, and
5many are written in MATLAB syntax and run there via [numbl](https://numbl.org).
7978becReorganize profile README by application areaJeremy Magland 7Projects are grouped below by **application area** — physics, numerical methods,
8data compression, neurophysiology, visual math, and more — rather than by the
9technology behind them. Each links to its repository, and to a live page where
10there is one.
7978becReorganize profile README by application areaJeremy Magland 12## Physics & quantum systems
14- **[numbl-quantum-optics](https://github.com/concept-collection/numbl-quantum-optics)**
15 ([live](https://concept-collection.github.io/numbl-quantum-optics/)).
e987b68Refine org profile README wordingJeremy Magland 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.
1307823Add organization profile README indexing concept-collection reposmagland 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/)).
e987b68Refine org profile README wordingJeremy Magland 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.
26## Geometry, meshing & PDE solvers
1307823Add organization profile README indexing concept-collection reposmagland 28- **[numbl-distmesh](https://github.com/concept-collection/numbl-distmesh)**
29 ([live](https://concept-collection.github.io/numbl-distmesh/)).
e987b68Refine org profile README wordingJeremy Magland 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.
1307823Add organization profile README indexing concept-collection reposmagland 33- **[numbl-surfacefun-intro](https://github.com/concept-collection/numbl-surfacefun-intro)**
34 ([live](https://concept-collection.github.io/numbl-surfacefun-intro/)).
e987b68Refine org profile README wordingJeremy Magland 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.
1307823Add organization profile README indexing concept-collection reposmagland 38- **[surfacefun-interactive](https://github.com/concept-collection/surfacefun-interactive)**
39 ([live](https://concept-collection.github.io/surfacefun-interactive/)).
e987b68Refine org profile README wordingJeremy Magland 40 surfacefun demos with live sliders, where React and three.js drive a numbl
41 script. Refine a cubed-sphere mesh or scale a tangent vector field and watch
42 it update.
7978becReorganize profile README by application areaJeremy Magland 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.
1329762Add mesh-converter to the project indexJeremy Magland 48- **[mesh-converter](https://github.com/concept-collection/mesh-converter)**
49 ([live](https://concept-collection.github.io/mesh-converter/)).
50 Convert meshes between 19 formats (PLY, OBJ, STL, VTK, Gmsh, XDMF, …) with
51 [meshio](https://github.com/nschloe/meshio) running in-browser on Pyodide;
52 inspect meshes in 3D and see what a lossy export would drop.
7978becReorganize profile README by application areaJeremy Magland 53- **[qhull-wasm-demo](https://github.com/concept-collection/qhull-wasm-demo)**
54 ([live](https://concept-collection.github.io/qhull-wasm-demo/)).
55 Demos and benchmarks for [qhull-wasm](https://github.com/magland/qhull-wasm),
56 which compiles [Qhull](http://www.qhull.org) to WebAssembly. Includes 2-D
57 Delaunay triangulation, 3-D convex hull, and a Delaunay benchmark with
58 matching scripts for MATLAB, Octave, and numbl.
60## Monte Carlo & sampling
2638a51profile: add hitandrun-interactiveJeremy Magland 62- **[hitandrun-interactive](https://github.com/concept-collection/hitandrun-interactive)**
f99e56aPoint walnuts + hitandrun live links to figure-only viewJeremy Magland 63 ([live](https://concept-collection.github.io/hitandrun-interactive/#figure/sampler)).
2638a51profile: add hitandrun-interactiveJeremy Magland 64 Hit-and-run MCMC sampling of a 2-D convex region, with React driving a numbl
65 script. Resample, make new regions, or play a step-by-step movie of the
66 algorithm.
cd3c859profile: add walnuts-interactiveJeremy Magland 67- **[walnuts-interactive](https://github.com/concept-collection/walnuts-interactive)**
f99e56aPoint walnuts + hitandrun live links to figure-only viewJeremy Magland 68 ([live](https://concept-collection.github.io/walnuts-interactive/#figure/sampler)).
cd3c859profile: add walnuts-interactiveJeremy Magland 69 WALNUTS (the within-orbit adaptive leapfrog No-U-Turn Sampler) drawing from a
70 2-D banana target, with React driving a numbl script. Tune the leapfrog step
71 and error tolerance, or play a step-by-step movie of the orbit-building.
2d6aba2Add stan-web-ide and numbl-web-ide to the project indexJeremy Magland 73- **[stan-web-ide](https://github.com/concept-collection/stan-web-ide)**
74 ([live](https://concept-collection.github.io/stan-web-ide/)).
75 Run [Stan](https://mc-stan.org) sampling in your browser, in a VS Code-style
76 IDE.
624d746Add commonview to the project indexJeremy Magland 78## Peer-to-peer shared state
80- **[commonview](https://github.com/concept-collection/commonview)**
81 ([live](https://concept-collection.github.io/commonview/)).
82 A minimal peer-to-peer page where every visitor shares one state (a counter):
83 nostr discovery, a WebRTC mesh, and a central-peer authority. The basis for
84 hitandrun-commonview.
76eae4dMove hitandrun-commonview under the p2p sectionJeremy Magland 85- **[hitandrun-commonview](https://github.com/concept-collection/hitandrun-commonview)**
86 ([live](https://concept-collection.github.io/hitandrun-commonview/)).
87 The hit-and-run figure with a single live view shared by all visitors over a
88 WebRTC mesh; one peer runs the sampler via numbl and broadcasts to the rest.
7978becReorganize profile README by application areaJeremy Magland 90## Scientific data compression
92- **[benchcompress](https://github.com/concept-collection/benchcompress)**
93 ([results](https://concept-collection.github.io/benchcompress/),
94 [paper (WIP)](https://concept-collection.github.io/benchcompress/paper)).
e987b68Refine org profile README wordingJeremy Magland 95 A benchmarking framework that measures compression ratio and encode/decode
96 throughput for compression algorithms on scientific data arrays.
1307823Add organization profile README indexing concept-collection reposmagland 97- **[ephys_compression_tests](https://github.com/concept-collection/ephys_compression_tests)**
98 ([results](https://concept-collection.github.io/ephys_compression_tests/)).
6633195Update profile READMEJeremy Magland 99 Compression benchmarks for electrophysiology recordings.
1307823Add organization profile README indexing concept-collection reposmagland 100- **[ans-visualizer](https://github.com/concept-collection/ans-visualizer)**
101 ([live](https://concept-collection.github.io/ans-visualizer/)).
e987b68Refine org profile README wordingJeremy Magland 102 A step-by-step visualizer for the Asymmetric Numeral Systems (ANS)
103 entropy-coding algorithm ([Duda et al., 2015](https://ieeexplore.ieee.org/abstract/document/7170048)).
7978becReorganize profile README by application areaJeremy Magland 105## Neurophysiology data & remote access
107- **[remote-hdf5-lazy-read](https://github.com/concept-collection/remote-hdf5-lazy-read)**
108 ([live](https://concept-collection.github.io/remote-hdf5-lazy-read/)).
e987b68Refine org profile README wordingJeremy Magland 109 Shows how [neurosift](https://neurosift.app/) browses large remote
1307823Add organization profile README indexing concept-collection reposmagland 110 [NWB](https://www.nwb.org/)/HDF5 files in the browser using HTTP range
111 requests, with no full download and no backend.
112- **[dandiset_000986](https://github.com/concept-collection/dandiset_000986)**
113 ([visualizations](https://concept-collection.github.io/dandiset_000986/)).
114 Reproducible figures and visualizations for
e987b68Refine org profile README wordingJeremy Magland 115 [DANDI Dandiset 000986](https://dandiarchive.org/dandiset/000986), a set of
116 mouse auditory cortex recordings.
7978becReorganize profile README by application areaJeremy Magland 118## Number theory & visual math
120- **[finite-field-visualizer](https://github.com/concept-collection/finite-field-visualizer)**
121 ([live](https://concept-collection.github.io/finite-field-visualizer/)).
e987b68Refine org profile README wordingJeremy Magland 122 Color-coded multiplication tables over finite (prime) fields. Step through the
123 primes to watch the structure change.
1307823Add organization profile README indexing concept-collection reposmagland 124- **[gcd-visualizer](https://github.com/concept-collection/gcd-visualizer)**
125 ([live](https://concept-collection.github.io/gcd-visualizer/)).
e987b68Refine org profile README wordingJeremy Magland 126 A heatmap of the greatest common divisor of every pair (i, j), laid out as a
127 color-coded table.
7978becReorganize profile README by application areaJeremy Magland 129## Image processing
7978becReorganize profile README by application areaJeremy Magland 131- **[numbl-image-filter](https://github.com/concept-collection/numbl-image-filter)**
132 ([live](https://concept-collection.github.io/numbl-image-filter/)).
133 Upload an image, write a MATLAB-syntax filter, and run it on the image in the
134 browser.
136## numbl platform: templates & tooling
138Utilities and starting points for building your own
139[numbl](https://numbl.org) projects.
2d6aba2Add stan-web-ide and numbl-web-ide to the project indexJeremy Magland 141- **[numbl-web-ide](https://github.com/concept-collection/numbl-web-ide)**
142 ([live](https://concept-collection.github.io/numbl-web-ide/)).
143 Run MATLAB-syntax .m files in your browser, in a VS Code-style IDE.
7978becReorganize profile README by application areaJeremy Magland 144- **[numbl-figure-viewer](https://github.com/concept-collection/numbl-figure-viewer)**
145 ([live](https://concept-collection.github.io/numbl-figure-viewer/)).
146 Open and explore a figure exported from numbl, including its underlying data.
147- **[numbl-project-example](https://github.com/concept-collection/numbl-project-example)**
148 ([live](https://concept-collection.github.io/numbl-project-example/)).
149 A minimal numbl project deployed to GitHub Pages, meant as a starting
150 template.
151- **[numbl-embed-example](https://github.com/concept-collection/numbl-embed-example)**
152 ([live](https://concept-collection.github.io/numbl-embed-example/)).
153 Shows how to embed editable, runnable numbl scripts inside Markdown rendered
154 on GitHub Pages.
↑↓ move↵openescclose