Million A Minute · since 2008
A million unknowns, in your browser on your phone - faster than ever.
MILAMIN set up, solved and post-processed one million degrees of freedom per minute in native MATLAB (Dabrowski, Krotkiewski & Schmid, 2008). This site carries the same solver strategy into the browser, where it runs live on whatever device opens the page, and keeps the original package and its record.
What you can do with it
Run models, use apps, build on the stack
The browser MilAMin is not a package to download but a solver stack that runs in the browser, and applications built on it. You can run your own two-dimensional Stokes models in the playground, use Folder to grow folds and boudins in layered rock, or take the stack itself, as Folder does and build something of your own.
Million A Minute
Mesh, assemble, factorize, iterate and render a one-million-unknown inclusion problem, with every stage on the clock.
Run itBenchmark
Run the solver on your machine at increasing size and compare assembly and solution times with MILAMIN's 2008 reference.
Measure itPlayground
Geometry, viscosities and boundary conditions in a few lines of JavaScript: inclusions of any shape and contrast, layered stacks, swarms, up to two million unknowns. Share a model as a link, save the figures.
Build a modelFolder
Folding and boudinage of viscous layers under shortening or extension: time stepping with remeshing, power-law rheology, growth rates against the analytical ones. The browser version of the 2016 Folder tool.
Grow a foldBuild on it. Under both apps is one stack: Triangle for the mesh, the 7-node Crouzeix–Raviart element assembled in typed arrays, CHOLMOD’s supernodal Cholesky in WebAssembly, and the rendering, all TypeScript and wasm with no server behind it. MILAMIN was never one trick: the 2008 paper showed that a million unknowns a minute comes from giving every stage equal care, and that is what the stack carries into the browser, verified against analytical solutions on every build (the convergence lab shows the check live). See how it works for what it is built on and the licenses for the terms. The code is on GitHub.
The original MILAMIN
MATLAB, 2008
The native package: one million degrees of freedom per minute on a desktop, from vectorized blocked assembly to Cholesky with fill-reducing reordering and Powell–Hestenes iterations. The original milamin.org is preserved here: the technical notes behind the speed, the application gallery with its simulation videos, the sources and the paper.