| 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.
Crystal and magnetic structure refinement that runs entirely in the browser.
A public-beta workbench for powder, single-crystal, and pair-distribution-function refinement with X-ray or neutron data, on one engine.
- Problem: Refinement means choosing among several specialist packages, each with its own formats and conventions — a steep start before a first fit.
- Approach: A tested TypeScript core (1,300+ tests), validated against GSAS-II, behind a guided workflow from data import to refined nuclear and magnetic structures.
- Value: Nothing to install and data stays local. Fits report correlations and uncertainties, not just an agreement factor, and the same core is available to LLM agents through MCP.
Neutron Elastic Background Utilities for Local Analysis & 3D-delta PDF.
A Python toolkit and browser app that cleans 3D neutron diffuse-scattering data and computes 3D-ΔPDF maps.
- Problem: Weak diffuse signal is often buried under powder rings, Bragg peaks, and background before any 3D-ΔPDF interpretation can begin.
- Approach: One reproducible pipeline for background removal, peak masking, and the ΔPDF transform, with visual checks at each step.
- Value: Runs natively at full resolution or in the browser via Pyodide, so every cleanup decision is inspectable and repeatable.
A no-install browser dashboard for RMCProfile: open a local run folder to review fits, structures, and atomic displacements without uploading data.
- Problem: Judging an RMC refinement means reading plots, logs, structures, and fit metrics that live in separate files and tools.
- Approach: Reads a run folder in place and brings fits, density maps, displacement analysis, and 3D structures into one view.
- Value: Live monitoring while a run writes, figure export, and an optional AI assistant that helps interpret the fit.
A browser app that computes phonon band structures, animated modes, simulated neutron spectra, and DOS from RMCProfile ensembles.
- Problem: RMC models capture measured local disorder, but turning them into lattice dynamics usually takes separate scripts and a computing backend.
- Approach: Extracts phonons directly from the ensemble and runs the heavy linear algebra on the user's GPU — a ~100× speedup from WebGPU.
- Value: Interactive dispersion curves, mode animation, and simulated INS with phonopy-compatible export — no scientific stack to install.
An early, exploratory prototype — a research direction I am actively learning in, not a finished tool.
A closed-loop experiment: an LLM agent proposes candidate materials, screens them with physics-based models, and iterates on the results — on local models by default.
- Question: Can an LLM agent using real domain tools help decide which materials to try next — measurably, not anecdotally?
- Approach: A proposer and an independent critic drive deterministic tools (CHGNet relaxation, convex-hull stability, band-gap models), with every candidate logged.
- Honest status: An early prototype. Results are compared against non-LLM baselines and should be treated as exploratory.

