Skip to main content

Code and experiments

Identifiability analysis for mathematical models

reparam

Julia code for Invariant Image Reparameterisation: finding identifiable parameter combinations and using them to reformulate models. The repository includes worked examples and profile-likelihood calculations.

Code and examples · Paper

Coding agents for scientific computing and teaching

I develop tools for working with coding agents on scientific code and documents, including shared interactive sessions and previews of mathematical writing.

Extensions for Pi

Pi Studio

A browser workspace for Pi, with prompts and responses alongside files and previews. You can comment on documents, edit prompts and work with a live REPL.

Overview and demos · Source and documentation

pi-markdown-preview

Preview Pi responses and local Markdown, LaTeX and code files in the terminal or browser, or export them to PDF. Browser previews can follow the session as you work.

Code and documentation

pi-repl

Start a REPL that you and Pi share. Work at the prompt from another terminal while Pi uses the same variables and functions. Supported runtimes include Python, Julia and R.

Code and documentation

Agent-agnostic tools

agent-repl

Work in the same running REPL as a coding agent. You can define variables and functions, ask the agent to use them, and inspect or change its work at the prompt.

Overview and demos · Source and documentation

agent-markdown-preview

Read coding-agent responses and local Markdown, LaTeX and code files in a browser. It also provides an optional view of shared REPL sessions.

Overview and demos · Source and documentation

Teaching games

Gradient Surfers is a running game for ENGSCI 205 revision. Questions and ordering tasks cover machine learning concepts and PyTorch code.

Regularisation Run is a snowboarding game for revising inverse problems and regularisation in ENGSCI 721.

Other projects and experiments are on GitHub.