| layout | splash | ||||||
|---|---|---|---|---|---|---|---|
| title | Packages & Tools | ||||||
| author_profile | true | ||||||
| classes | wide | ||||||
| header |
|
Browser-first research tools for crystal & magnetic structure refinement, RMC analysis, neutron diffuse scattering, and phonon dynamics. These projects emphasize local data privacy, interactive visualization, and deployable workflows that can run directly from GitHub Pages when the science allows it.
An AI-native foundation for materials science — crystal & magnetic structure refinement that runs entirely in the browser.
A public-beta workbench that unifies single-crystal and powder, X-ray and neutron (CW and TOF), nuclear and magnetic refinement — in reciprocal space and in real space — on one Levenberg–Marquardt engine, and exposes the same pure scientific core to LLM agents as MCP tools, so an agent can drive the refinement loop the way an expert does.
- Problem: Starting a refinement today means picking among several deep package ecosystems, each with its own formats, instrument files, and magnetic formalism — and the expert judgment loop (free only symmetry-allowed parameters, watch correlations, judge residuals) stays locked in human hands.
- Approach: Every scientific capability is pure, tested TypeScript (1111 tests in CI, validated against GSAS-II) behind a guided workflow: auto-detected CIF/mCIF, hkl, GSAS and FullProf data/instrument formats; symmetry-constrained least squares; and an end-to-end magnetic workflow from peak detection through k-vector search to Shubnikov-group moment refinement.
- Beyond the average structure: Real-space PDF refinement adds symmetry-mode fitting — Γ irrep decomposition, an isotropy-subgroup tree, and the full translationengleiche (Bärnighausen) subgroup lattice, with each mode's eigenvector drawn on the 3D model — plus a magnetic-PDF track validated against
diffpy.mpdfand the published mPDF tutorial cases. - Uncertainty you can question: The engine samples the posterior rather than only linearizing it — affine-invariant ensemble MCMC and a gradient-based NUTS sampler, with R̂/ESS diagnostics and credible intervals. On the Ni PDF golden, posterior widths match the linearized esds to 1%. Approach after Fancher et al. (2016); reporting per McCluskey et al. (2023).
- Value: Nothing to install and data never leaves the machine; the engine reports correlations, SVD near-null directions, and at-bound flags — not just wR — and 33 contract-tested MCP tools expose parse → build → refine → assess → sample_posterior → suggest → interpret so agents can reason about a fit, not just run it.
Neutron Elastic Background Utilities for Local Analysis & 3D-delta PDF.
A Python toolkit and hosted browser console for cleaning 3D reciprocal-space neutron diffuse scattering volumes and preparing 3D-ΔPDF analysis products from Mantid-style HKL data.
- Problem: Weak diffuse signals can be buried under powder-ring backgrounds, sharp Bragg and satellite peaks, radial pedestals, and transform artifacts before 3D-ΔPDF interpretation even begins.
- Approach: The workflow unifies ring subtraction, Bragg/satellite punching, q-shell backfill, radial-background flattening, 3D-ΔPDF transforms, inverse-FFT consistency checks, and multi-view visual QA.
- Value: It provides both full-resolution native workflows and a GitHub Pages web app that can run real pipeline stages client-side via Pyodide for modest volumes, making cleanup decisions inspectable and reproducible.
A no-install browser dashboard for RMCProfile, STOG, and EXAFS outputs. Select a local run folder to inspect refinement charts, KDE slices, folded 3D structures, and AI-guided summaries of model and fit details without uploading data.
- Problem: RMC validation spans plots, logs, structures, and fit metrics that are hard to inspect together during refinement.
- Approach: The React/Vite app reads run folders locally, auto-detects outputs, renders interactive charts, and connects KDE, slab, and Three.js structure views.
- Reading the displacement cloud two ways: PCA thermal ellipsoids report each principal axis as the crystallographic direction [u v w] it runs along, while a Displacement Directions map bins the same displacements in solid angle on a hex-tiled sphere — exposing discrete hop directions and ±u asymmetry that an anisotropic U tensor averages away.
- Value: Live monitoring, figure export, EXAFS-aware plotting, WebGPU KDE, and an AI assistant help users understand model details, fit quality, and refinement diagnostics in one private dashboard.
A fully client-side phonon analysis app for RMCProfile ensembles. Open the hosted page, select a local run folder, and compute phonon band structures, animated 3D modes, simulated INS S(|Q|,E), and phonon DOS directly in the browser.
- Problem: RMC ensembles encode experimentally constrained local disorder, but translating those configurations into lattice-dynamical insight usually requires separate scripts, backends, or model assumptions.
- Approach: The app extracts displacement-covariance phonons from the selected ensemble, runs the S(k) diagonalization on the user's machine with WebGPU, and keeps all files local through the browser folder picker.
- Value: It turns RMC-derived structure into interactive dynamics: dispersion curves, soft-mode highlighting, 3D eigenvector animation, INS maps, DOS, fit-quality overlays, and phonopy-compatible exports without installing a scientific stack — with the S(Q,E)-derived DOS and the band structure sharing one energy axis in meV, so a computed dispersion and a measured spectrum can be read against each other directly.
An early, exploratory prototype — a research direction I am actively learning in, not a finished tool.
A closed-loop experiment in whether an LLM agent can usefully drive materials screening: it states a hypothesis, proposes candidate compositions, screens them with physics-grounded surrogate models, reflects in a lab notebook, and iterates, running on local models by default.
- Question: Can an LLM agent that uses real domain tools, not just chat, meaningfully help decide which materials to try next, and can that help be measured rather than asserted?
- Approach: A proposer LLM and an independent critic drive deterministic tools — charge-balance filters, CHGNet relaxation, convex-hull stability, MEGNet band gaps — with budgets enforced in code and every candidate logged to ground truth.
- Honest status: A prototype under active development. Each campaign is benchmarked against non-LLM baselines (random and similarity) at equal compute, so "the agent helps" stays a claim with a control group, and often only a modest one. Treat the results as exploratory.

