Skip to content
View Robert-Study's full-sized avatar
🚀
Building, modelling & occasionally breaking things in Python
🚀
Building, modelling & occasionally breaking things in Python

Block or report Robert-Study

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
Robert-Study/README.md

Robert Gardner

I'm a Physics BSc (Hons) graduate from the University of Birmingham, ranked 5th in the UK for Physics. My interests include scientific computing, experimental data analysis and numerical modelling. I use Python to build simulations, analyse measurements and solve optimisation problems.

Selected projects

Project leadership · Instrument calibration

I led an eight-person experimental project investigating thin films and surface plasmon resonance. My main contribution combined rotating-compensator ellipsometry, Ψ–Δ extraction and instrument calibration to estimate film properties.

My improved setup and analysis tracked Ψ and Δ approximately 25× more closely than previous-year implementations. A calibration technique I developed reduced the remaining error by a further factor of two, giving a thickness of thin-films accuracy approaching nanometers.

71% group · 75% individual | First-Class
Read the project report

Large-scale simulation · Data modelling

I developed a stochastic forest-fire model investigating population dynamics, fire-size distributions and cluster geometry. I extended the assessed coursework with larger simulations, parameter sweeps, individual fire tracking and an interactive application for exploring the model.

Vectorised NumPy operations, compact arrays and careful memory management enabled 2 trillion+ cell-time updates per large simulation and 15 trillion+ across the project.

74% | First-Class · Extended after assessment
Interactive simulation
Read the project report

Signal extraction · Spectral fitting

I used Doppler-free spectroscopy to resolve rubidium's hyperfine structure. My analysis aligned oscilloscope recordings, separated broad absorption from narrow resonances and calibrated frequency using a Fabry–Pérot cavity.

Gaussian and Lorentzian fits yielded resonance centres and linewidths for estimating quantum properties. I assessed how frequency calibration, laser-sweep nonlinearity and power broadening influenced the results and their uncertainty.

77% | First-Class
Read the laboratory report

Algorithm design · Constrained optimisation

I investigated how root selection affects expected rewards in a 100-key binary search tree. Equally weighting roots 38–62 achieves the maximum mean expected reward of 0.20, with 81 keys receiving positive expected rewards.

An optimised strategy assigns unequal probabilities to 40 roots within the range 4–82, achieving positive expected rewards for all 100 keys with a mean of 0.132.


Algorithmic optimisation challenge | £25 3rd place
Explore the method and results

Scientific reasoning · Feedback control

I modelled quantum energy levels, analysed electronic filters, recovered noisy signals and designed rocket feedback controllers. Six worksheets covered probability, nuclear binding energies, lattice sums, electrostatics and Monte Carlo methods.

The work combined numerical methods with physical interpretation, from finding bound states to controlling motion. My rocket project and programming worksheets both ranked highest in the cohort.

Quantum: 95% · Spectral analysis: 80%
Rockets: 90% · Worksheets: 98% average

Experimental research · Optical measurement

I investigated how thin surface films affect capillary-wave damping. Using laser interferometry, I measured wave amplitudes at different distances, comparing water, an acetone solution and an olive-oil-covered surface.

My analysis corrected laser-intensity fluctuations, modelled the detector response and used uncertainty-weighted fits to estimate attenuation, examining how the surface film changed the decay of the waves.

Summer research | Independent project
Read the research report

Main tools: Python, NumPy, SciPy, Matplotlib, pandas, Streamlit, Git and LaTeX.

Email: home@robertgardner.co.uk

Pinned Loading

  1. Forest-Fire-Analysis Forest-Fire-Analysis Public

    Optimised Python forest-fire simulation exploring self-organised criticality, oscillatory dynamics, scaling laws and heavy-tailed fire-size distributions.

    Python 1

  2. Rotating-Compensator-Ellipsometry Rotating-Compensator-Ellipsometry Public

    Python pipeline for rotating-compensator ellipsometry, including calibration, harmonic fitting, Fresnel modelling and thin-film parameter extraction.

    Python 1

  3. Scientific-Python-Projects Scientific-Python-Projects Public

    Scientific Python projects in quantum systems, Fourier analysis and autonomous rocket simulation, demonstrating numerical modelling and computational physics.

    Python 1

  4. Binary-Search-Tree-Optimisation Binary-Search-Tree-Optimisation Public

    Exploration of reward optimisation in depth-based binary search trees using weighting, rounding and numerical analysis.

    Python 1