Nils Coutant

Undergraduate Physics student at EPFL and Imperial College London.
This portfolio highlights selected academic and personal projects, mainly involving physics modeling, numerical methods, and programming.

Simulation Based Inference of the Wilson Coefficient \(C_9\) from \(B^0 \to K^{0*}\mu^+\mu^-\) Decays

This work was my Bachelor project at Imperial College London supervised by Dr Mark Smith.
When I started this project, neural networks and particle physics were totally new to me and I had to learn many new concepts by myself.

Overview:
The Standard Model of particle physics is extremely successful, yet incomplete. Several measurements performed by the LHCb at CERN have revealed tensions with its predictions referred to as \(B\) anomalies. The \(B^0 \to K^{0*} \mu^+ \mu^-\) decay occurs only at loop level making it sensitive to new physics contributions. The value of the Wilson coefficient \(C_9\) can be determined from the kinematic distributions measured by the LHCb. This is traditionally done using likelihood-based fits that rely on a large number of parameters with complex correlations potentially leading to an underestimated uncertainty and biased estimations. This work explores Simulation Based Inference as a new approach to estimate the value and uncertainty of \(C_9\). The ideal simulator at theory level fails the misspecification test. Experimental effects are then implemented, partially correcting this issue. The expected scaling relation between the uncertainty and the number of events per sample is confirmed. Several configurations are compared to identify the most suitable one for an accurate inference. Estimates of \(C_9\) with relative deviations of order 15% with respect to the Standard Model prediction and existing fit measurements are obtained using LHCb toy data. However, the simulator is too simplified and the neural networks are insufficiently robust for these estimates to be reliable, as they may be biased and their uncertainties underestimated. These results highlight both the potential and the limitations of Simulation Based Inference for the estimation of Wilson coefficients. With a more realistic simulator, improved robustness, sequential methods, and alternative SBI approaches, an accurate inference of \(C_9\) could be achieved. In the long term, such developments may help determine whether the observed tensions with the Standard Model predictions are due to underestimated uncertainties or signs of new physics.

Click here to see my project report and anywhere else to see the code on GitHub.

Here are some figures from the report:

Expected Coverage Test

Expected Coverage Test

Uncertainty as a function of the number of events

Average inference uncertainty as a function of the number of events per sample

Many posterior predictions

Several posterior predictions. The red lines indicate the true values of \(C_9\).

Ideal gas simulation

This project began as a programming assignment during my first year at EPFL. The objective was to simulate an ideal gas using a hard-sphere collision model. Out of personal curiosity, I went beyond the initial requirements by adding numerous features and focusing on graphical visualization.

The simulation qualitatively reproduces key physical principles such as the ideal gas law, Dalton’s law, Brownian motion, and thermodynamic cycles like Carnot and Stirling. While visually accurate, the results are not quantitatively reliable, as I had not yet been introduced to the numerical physics methods required for physically rigorous simulations.

Working on this first simulation taught me the importance of statistical smoothing in dynamic systems. I implemented optimized computation of temperature from collisions and used a moving average to stabilize pressure measurements over time.

(Click any project to get more details)

Simulation of an ideal gas (red: helium, blue: neon, green: argon)

Stirling cycle (colors indicate particle energy)

Particle trajectories over time

Linearity of p and T
Ideal gas law
Dalton law
Carnot Cycle
Stirling cycle

Leveling - Discord Bot

I developed this Discord bot independently before starting my studies at EPFL, using Kotlin and object-oriented programming. The bot rewards user engagement with experience points and leaderboards, encouraging activity in Discord communities. It was officially verified by Discord after a review and reached over 2000 servers before I shut it down at the start of my university studies.

This project taught me how to use APIs and third-party libraries effectively, and introduced me to important considerations around data security and user privacy. I also gained experience in related areas such as debugging, interface design, and branding—including creating visuals with GIMP and writing all in-bot communication in English. It required sustained effort over several months and taught me how to structure a large personal project.

Image 1 Image 2 Image 3 Image 4 Image 5 Image 6 Image 7

Visualizing the determinant of a linear transformation

This shorter project was an introduction to Manim, a Python library for creating mathematical animations. I used it to visualize the geometric interpretation of the determinant and to better understand its properties.

I found that linear algebra often becomes more intuitive when visual connections are made between concepts. This project was a way to explore that dimension and experiment with Manim.

Quantum particle

This project was part of a numerical physics course at EPFL, and focused on simulating the time-dependent Schrödinger equation using the Crank–Nicolson method. We studied the quantum harmonic oscillator and the tunneling effect through a potential barrier.

I found that visual simulations make the behavior of the system easier to understand.

Gaussian wave packet in a harmonic potential

Gaussian wave packet crossing a potential barrier

Wave function

Visualization of the wave packet crossing a potential barrier

Quantum Tunneling

Transmission probability as a function of barrier energy

Tsunami simulation

This project was part of the same numerical physics course at EPFL and focused on simulating wave propagation in shallow water with varying depth. We implemented a three-level finite difference scheme and compared several wave equations under different boundary and topographic conditions.

The simulation reproduced key effects such as amplitude increase near the shore and partial wave reflection. I also compared the numerical results to WKB analytical predictions.

Wave approaching the coastline

Wave predicted by the WKB approximation

Tsunami amplitude

Maximum wave amplitude as a function of position

Wave representation

Wave profile approaching the coast

Newtonian gravitation

This project explored the motion of an asteroid under Newtonian gravity, first influenced only by the Sun, then by both the Sun and Jupiter. We implemented a 4th-order Runge–Kutta integrator with optional adaptive time stepping to compare orbital trajectories and energy conservation.

Trajectories of the asteroid

Asteroid trajectories around the Sun for different time step resolutions

Asteroid in L4

Asteroid trajectory near the L4 Lagrange point of the Sun–Jupiter system

Chaos theory

This simulation models the motion of a magnetic needle in an oscillating magnetic field. It was part of the same numerical physics course at EPFL, using a velocity-dependent Verlet scheme. We explored different dynamical regimes including resonance, phase-space structure, sensitivity to initial conditions, and chaotic behavior with and without damping.

Not all projects from this course are shown here, as some of them were more technical and less suited to quick visual illustration.

Poincaré section showing phase-space structure

Exponential error increase

Exponential divergence of nearby trajectories in the chaotic regime

Physics experiments

During my second year of Bachelor's studies, I conducted 12 physics lab experiments and learnt how to write scientific reports. These assignments focused on experimental method, uncertainty analysis, and scientific communication. I processed data using Python (NumPy, Matplotlib) and learnt how to structure technical documents using LaTeX.

I learnt how to handle experimental data with attention to detail and present my findings clearly using consistent and rigorous documentation standards.

Photovoltaique

Electrical power generated by a silicon amorphous photovoltaic cell as a function of the voltage

Rendement moteurs

Efficiency of a DC motor versus rotation frequency for bipolar and tripolar rotors

Amortissement faible

Free oscillations of a rotating disk with low damping

Oscillations forcées

Oscillation amplitude of a rotating disk as a function of excitation frequency

Spectre rayons X

X-ray diffraction pattern of a NaCl crystal at different acceleration voltages

Spectre hydrogène

Emission spectrum of hydrogen