Colby Lemon
Computational Physicist ·
HPC Engineer
https://lemonlab.net ·
https://github.com/lem-n
https://www.linkedin.com/in/colbylemon
· colby@lemonlab.net · 214-587-8663
Profile
Computational physicist and HPC engineer building and streamlining
large-scale numerical models of complex physical systems. Deep expertise
in PDE solvers, parallelization (MPI, OpenMP, CUDA), and C++, Fortran,
Python, and Julia; delivering robust, test-driven code used for
magnetospheric modeling, satellite anomaly assessment, and plasma
instrument development. Proven history of accelerating core solvers and
modernizing legacy code to meet project goals and boost performance,
accuracy, and maintainability.
Core Skills
- Programming & Languages: C++, Fortran, Python, Julia,
Lua, Shell scripting
- GPU & Parallel Computing: CUDA, MPI, OpenMP, Slurm,
SGE
- Numerical Linear Algebra: OpenBLAS, LAPACK, ScaLAPACK, MKL,
PETSc, Trilinos, GMRES
- Scientific Computing: PDE solvers, CFD, MHD, FEM/FEA,
numerical analysis, mathematical optimization
- Performance Engineering: CPU/GPU architecture, memory
optimization, profiling and bottleneck analysis
- Data & Libraries: HDF5, netCDF, Boost, Gmsh, ParMETIS,
NumPy/CuPy/SciPy, PyTorch, Pandas
- Software Engineering Practices: Modular design, build
systems debuggers, version control
Experience
The
Aerospace Corporation · Space Science Applications Laboratory
El Segundo, California ·
2005–Present
HPC Numerical Model Development for Spacecraft Charging and
Electrostatic Discharge Simulation
- Developed a 3D model in C++ for simulating charge accumulation in
spacecraft materials; coupled the Geant4 radiation transport code with a
finite-element electric-field solver and charge transport
algorithm.
- Implemented adaptive mesh refinement to resolve localized charge
accumulation and electric field features.
- Parallelized the radiation transport calculations using MPI, and the
electric field solver using MPI and ScaLAPACK
- Developed a 1D spacecraft-charging model in Python for rapid
turnaround simulation of 10-15 year spacecraft missions for analyses of
on-orbit anomalies and failures driven by electrostatic discharges
(ESD).
- Tested parallel CPU and GPU dense and sparse matrix solvers (Numpy,
Scipy, CuPy, PyTorch) to compute electric field in the 1D Gauss/Poisson
equation on high resolution grids.
- Pre-launch simulation analysis of the charging susceptibility of
materials for payloads, solar arrays, and other components to estimate
ESD risk to critical on-orbit systems.
- Wrote Python front-end scripts to control simulations and
systematically vary material properties and radiation environments to
map out the ESD susceptibility space using parametric simulations.
HPC Numerical Model Development for Simulation and Analysis
of Magnetosphere Dynamics
- Developed a coupled model of plasma transport and feedback between
the magnetosphere, ionosphere, and plasmasphere for simulating space
weather and magnetic storms.
- Validated simulation results through direct comparison with
satellite measurements to quantify model accuracy and assess the role of
specific physical processes.
- Performed numerical experiments to map out cause-and-effect
relationships between external drivers of the magnetosphere and their
effect on space weather and aurora.
- Improved numerical methods and optimized computational performance
using profiling to target bottlenecks.
- Single-core optimized and parallelized key components (advection
solver, magnetic field solver) using OpenMP for shared-memory
servers.
- Tested advection solver flux limiters to balance numerical diffusion
and spurious oscillations in the plasma transport equations.
- Refactored code and developed new features using test-driven
development principles; wrapped compiled Fortran with Julia to speed
development and testing; migrated significant portions of legacy Fortran
code to Modern Fortran and Python.
- Performed statistical analyses of satellite plasma and energetic
particle observations to (a) gain insight into magnetospheric processes,
(b) generate model inputs, (c) validate models via data/model
comparisons, and (d) assess on-orbit satellite anomalies (Python, NumPy,
SciPy, pandas, Matplotlib).
- Developed a relativistic Lorentz-force particle-tracing code to
calculate electron trajectories in 3D magnetic and electric fields;
parallelized with MPI Fortran.
Plasma Instrument Design, Development, and Field
Work
- Supported launches of four suborbital NASA missions: oversaw
payload-instrument integration with the rocket; monitored ground-support
equipment pre-flight and in-flight to verify instrument
performance.
- Designed, prototyped, built, and launched a magnetic mass
spectrometer to measure plasma ion composition using magnets and
electrodes.
- Simulated mass spectrometer using a first-principles physics model
of ion optics to understand how different masses traverse the instrument
electric and magnetic fields.
- Wrote a Python code incorporating the magnetic field and electrode
geometry with an electric field solver to simulate and optimize
electrode shapes to compensate for magnetic-field non-uniformities.
- Fabricated, tested, and launched the spectrometer on two suborbital
sounding rockets to measure ion composition in the upper ionosphere and
lower magnetosphere.
- Simulated electron and ion trajectories inside CubeSat payload
plasma-analyzer instruments to optimize design trade-offs and maximize
science return.
- Developed Lua automation scripts to iterate over particle energies
and acceptance angles to comprehensively characterize the instrument
response to the plasma environment
Education
- Ph.D., Physics — Rice University
- M.S., Astrophysics — Rice University
- B.S., Physics — University of Texas at Dallas