/ proof-of-concept / .mochi
Sign in
proof-of-concept / .mochi
.mochi / profile / README.md
119 lines · 6.8 KBPreviewCodeBlameHistoryRaw
1# Concept Collection
3A set of small, independent projects: interactive demos, teaching material, and
4research code. Most run directly in the browser with nothing to install. The
5recurring themes are running MATLAB-syntax code in the browser with
6[numbl](https://numbl.org), tooling for scientific data, and visualizing
7mathematical structure.
9Each project below links to its repository, and to a live page where there is
10one.
12## Run-in-browser MATLAB (numbl)
14MATLAB-syntax projects that run in the browser via [numbl](https://numbl.org).
16- **[numbl-quantum-optics](https://github.com/concept-collection/numbl-quantum-optics)**
17 ([live](https://concept-collection.github.io/numbl-quantum-optics/)).
18 Runnable scripts accompanying the article "Quantum optics in MATLAB"
19 ([arXiv:2309.14354](https://arxiv.org/abs/2309.14354)), covering quantum
20 states, operators, and dynamics.
21- **[numbl-open-quantum-systems](https://github.com/concept-collection/numbl-open-quantum-systems)**
22 ([live](https://concept-collection.github.io/numbl-open-quantum-systems/)).
23 Code from "Coding closed and open quantum systems in MATLAB"
24 ([arXiv:1911.04906](https://arxiv.org/abs/1911.04906)), including Ising
25 dynamics, cavity-QED phase transitions, and Lindblad and non-Markovian
26 evolution.
27- **[numbl-distmesh](https://github.com/concept-collection/numbl-distmesh)**
28 ([live](https://concept-collection.github.io/numbl-distmesh/)).
29 Every example from Persson and Strang's
30 [DistMesh](https://github.com/popersson/DistMesh), meshing 2-D regions and
31 surfaces from signed distance functions.
32- **[numbl-surfacefun-intro](https://github.com/concept-collection/numbl-surfacefun-intro)**
33 ([live](https://concept-collection.github.io/numbl-surfacefun-intro/)).
34 An introduction to [surfacefun](https://github.com/danfortunato/surfacefun),
35 which computes with functions on surfaces and solves PDEs on them to high
36 order.
37- **[surfacefun-interactive](https://github.com/concept-collection/surfacefun-interactive)**
38 ([live](https://concept-collection.github.io/surfacefun-interactive/)).
39 surfacefun demos with live sliders, where React and three.js drive a numbl
40 script. Refine a cubed-sphere mesh or scale a tangent vector field and watch
41 it update.
42- **[hitandrun-interactive](https://github.com/concept-collection/hitandrun-interactive)**
43 ([live](https://concept-collection.github.io/hitandrun-interactive/)).
44 Hit-and-run MCMC sampling of a 2-D convex region, with React driving a numbl
45 script. Resample, make new regions, or play a step-by-step movie of the
46 algorithm.
47- **[walnuts-interactive](https://github.com/concept-collection/walnuts-interactive)**
48 ([live](https://concept-collection.github.io/walnuts-interactive/)).
49 WALNUTS (the within-orbit adaptive leapfrog No-U-Turn Sampler) drawing from a
50 2-D banana target, with React driving a numbl script. Tune the leapfrog step
51 and error tolerance, or play a step-by-step movie of the orbit-building.
52- **[numbl-chunkie](https://github.com/concept-collection/numbl-chunkie)**
53 ([live](https://concept-collection.github.io/numbl-chunkie/)).
54 Examples for [chunkie](https://github.com/fastalgorithms/chunkie): building
55 chunker geometries in 2-D and solving Laplace, Helmholtz, and Stokes boundary
56 integral equations.
57- **[numbl-image-filter](https://github.com/concept-collection/numbl-image-filter)**
58 ([live](https://concept-collection.github.io/numbl-image-filter/)).
59 Upload an image, write a MATLAB-syntax filter, and run it on the image in the
60 browser.
61- **[numbl-figure-viewer](https://github.com/concept-collection/numbl-figure-viewer)**
62 ([live](https://concept-collection.github.io/numbl-figure-viewer/)).
63 Open and explore a figure exported from numbl, including its underlying data.
64- **[numbl-project-example](https://github.com/concept-collection/numbl-project-example)**
65 ([live](https://concept-collection.github.io/numbl-project-example/)).
66 A minimal numbl project deployed to GitHub Pages, meant as a starting
67 template.
68- **[numbl-embed-example](https://github.com/concept-collection/numbl-embed-example)**
69 ([live](https://concept-collection.github.io/numbl-embed-example/)).
70 Shows how to embed editable, runnable numbl scripts inside Markdown rendered
71 on GitHub Pages.
73## Data compression
75- **[benchcompress](https://github.com/concept-collection/benchcompress)**
76 ([results](https://concept-collection.github.io/benchcompress/),
77 [paper (WIP)](https://concept-collection.github.io/benchcompress/paper)).
78 A benchmarking framework that measures compression ratio and encode/decode
79 throughput for compression algorithms on scientific data arrays.
80- **[ephys_compression_tests](https://github.com/concept-collection/ephys_compression_tests)**
81 ([results](https://concept-collection.github.io/ephys_compression_tests/)).
82 Compression benchmarks for electrophysiology recordings.
83- **[ans-visualizer](https://github.com/concept-collection/ans-visualizer)**
84 ([live](https://concept-collection.github.io/ans-visualizer/)).
85 A step-by-step visualizer for the Asymmetric Numeral Systems (ANS)
86 entropy-coding algorithm ([Duda et al., 2015](https://ieeexplore.ieee.org/abstract/document/7170048)).
88## Neurophysiology data and remote access
90- **[remote-hdf5-lazy-read](https://github.com/concept-collection/remote-hdf5-lazy-read)**
91 ([live](https://concept-collection.github.io/remote-hdf5-lazy-read/)).
92 Shows how [neurosift](https://neurosift.app/) browses large remote
93 [NWB](https://www.nwb.org/)/HDF5 files in the browser using HTTP range
94 requests, with no full download and no backend.
95- **[dandiset_000986](https://github.com/concept-collection/dandiset_000986)**
96 ([visualizations](https://concept-collection.github.io/dandiset_000986/)).
97 Reproducible figures and visualizations for
98 [DANDI Dandiset 000986](https://dandiarchive.org/dandiset/000986), a set of
99 mouse auditory cortex recordings.
101## Mathematical visualizers
103- **[finite-field-visualizer](https://github.com/concept-collection/finite-field-visualizer)**
104 ([live](https://concept-collection.github.io/finite-field-visualizer/)).
105 Color-coded multiplication tables over finite (prime) fields. Step through the
106 primes to watch the structure change.
107- **[gcd-visualizer](https://github.com/concept-collection/gcd-visualizer)**
108 ([live](https://concept-collection.github.io/gcd-visualizer/)).
109 A heatmap of the greatest common divisor of every pair (i, j), laid out as a
110 color-coded table.
112## Computational geometry
114- **[qhull-wasm-demo](https://github.com/concept-collection/qhull-wasm-demo)**
115 ([live](https://concept-collection.github.io/qhull-wasm-demo/)).
116 Demos and benchmarks for [qhull-wasm](https://github.com/magland/qhull-wasm),
117 which compiles [Qhull](http://www.qhull.org) to WebAssembly. Includes 2-D
118 Delaunay triangulation, 3-D convex hull, and a Delaunay benchmark with
119 matching scripts for MATLAB, Octave, and numbl.
↑↓ move↵openescclose