Software developer and computational scientist with a Master's in Mathematical Physics. I work mostly in Python and PyTorch, but I am comfortable across the stack: GPU compute on one end, React and Three.js frontends on the other. Most of what I have built is scientific software, including differentiable simulators, numerical solvers, and interactive 3D tools. I also work day to day with agentic coding models and LLM-assisted development.
Python · TypeScript · JavaScript · C++ · HTML/CSS
PyTorch · Graph Neural Networks · Diffusion Models · VAEs · Neural ODEs · PINNs · LLM Evaluation (RLHF)
React · Three.js · WebGL/WebGPU · Vite · Tailwind CSS · WebSocket
FastAPI · REST APIs · SQL (SQLite, schema migrations) · Docker · Git · CI/CD · Agentic Coding Tools
VTK · ParaView · PyVista · Trame · geopandas · VTU/PVD formats · OpenGeoSys
Meshes & half-edge structures · Discrete differential geometry · Remeshing & mesh quality · Geodesics · VTK/PyVista · Marching cubes · Splines
NumPy · SciPy · SymPy · Numerical PDE solvers · Monte Carlo methods
German (native) · English (C1, full professional proficiency)
OpenGeoSys 3D Web Viewer. A browser application for OpenGeoSys and VTK simulation output, built with Trame and PyVista. Server-side VTK rendering streamed to the browser, a time slider over VTU/PVD series, colouring by any point or cell field, and a geopandas overlay of site features (boundaries, monitoring wells, fracture traces). Loader and GIS layers unit-tested, with a headless render check in CI across Python 3.10 to 3.12. github.com/erik2810/ogs-trame-viewer
Mesh Embeddings & DDG. GPU mesh embedding into hyperbolic and spherical spaces by spring-mass energy minimization, with a discrete differential geometry operator library. Computational basis for the Bridges 2026 paper.
Graph ML Lab. A PyTorch framework for spatial graph generation, built from scratch: GCN, GAT, graph VAE, and joint discrete-continuous diffusion over 3D graph structures. No external GNN libraries. github.com/erik2810/ml-projects
Mesh-Based Physics Simulator. A fully differentiable physics engine in PyTorch that maps mesh topology to particle-spring systems, with energy-based forces and end-to-end backpropagation through the dynamics.
PINN Solver. A Physics-Informed Neural Network solver for 10 PDEs (Burgers, Heat, Wave, KdV, and others) with a PyTorch training backend and client-side JavaScript inference. github.com/erik2810/pde-solver
Lattice Quantum Field Theory. Monte Carlo simulation of an SU(2) lattice gauge theory via Langevin dynamics, with a gauge-invariant Wilson action and observables. Paired with a transfer-matrix computation for the anharmonic oscillator whose eigenvalues give the Hamiltonian spectrum and mass gap exactly, serving as a reference for the stochastic results. Tested against the analytically known limits.
DiffQFT. Differentiable quantum field theory in AdS₂, with neural surrogates that replace Monte Carlo integration, a PINN solver, and a FastAPI backend. github.com/erik2810/DiffQFT
Knitted Models. A computational geometry engine that generates woven strand patterns on quad meshes using half-edge data structures and spline interpolation, rendered in Three.js with GPU path tracing.
Neural ODE Engine. A network that learns chaotic Lorenz dynamics in real time, with backpropagation, an RK4 integrator, and an Adam optimizer written by hand in JavaScript. github.com/erik2810/differentiable-physics-engine
Full portfolio with live demos at erik2810.github.io/projects
Available upon request.