Here is a list of my current and past research projects, I hope you'll find something interesting!.
Sparse fault representation
I am developing a hybrid source representation that bridges the gap between conventional finite fault models and multiple-point sources used to represent large earthquake ruptures. Based on the geometrical properties of Moment Tensor sources, I have developed an interpolation scheme that allows the representation of a quasi-continuous slip distribution along a fault based on a set of key moment tensors.
This sparse representation benefits both the forward modeling and the inverse problem, as it allows for a compact representation of the parameters to be inverted while also providing a quasi-continuous representation of the slip distribution by interpolation.
MTUQ
I am one of the lead developers of the MTUQ package, a Python-based software for Moment Tensor inversion and Uncertainty Quantification. MTUQ is designed to be a flexible (hackable design) and user-friendly tool for inverting seismic waveform and first motion polarity data.
MTUQ is based of the cut-and-paste method, and is designed to be adaptable to different research needs, offering customizable data processing and misfit functions as well as built-in support for commonly used solver output formats (SPECFEM3D, AxiSEM, FK). In addition, the package aims to be efficient enough for operational use cases, including applications to large event catalogs.
CMA-ES
I am exploring the use of black box optimization for the source inversion problem using the Covariance Matrix Adaptation Evolution Strategy (CMA-ES). CMA-ES is a self-adaptive, population-based optimization algorithm that has been shown to be efficient for low-dimensional optimization problems.
One of its main advantages is that it does not require the computation of gradients, making it particularly suitable for exploring various inverse problems and rapidly prototyping new source inversion methods. While it does not guarantee finding the global minimum, CMA-ES is generally efficient at avoiding local minima and has shown competitive results for global optimisation.
specfem_tomo_helper
In an attempt to simplify the use of external tomography models in SPECFEM3D, I have developed specfem_tomo_helper, a helper code designed to extract, prepare, and save a tomographic model in the correct format from NetCDF files obtained on the IRIS EMC library of models.
specfem_tomo_helper is written in Python and comes with a light graphical user interface to help select the area of interest within an existing model. It then automatically handles projection from geographical coordinates into cartesian coordinates, as well as regular grid interpolation. The code is still in an early stage of development but should be enough to get people started on simple use cases.
Waveform modeling - source upsampling
As I work primarily with seismic waveform data, I am naturally interested in waveform modeling. I am exploring the use of source upsampling using moment tensor interpolation, in order to produce very smooth, high-resolution slip models, from coarse finite-fault solutions.
Thanks to this approach, it is possible to revisit any past earthquake from which we have a source model (USGS Finite Fault product), and make them compatible with 3D waveform simulation solver like SPECFEM3D or SPECFEM3D_Globe, without increasing the computational cost (the source model gets improved without impacting the modeling scheme).
Uncertainty estimation in full waveform inversion
Taking cues from the Data assimilation and numerical weather forecasting communities, I have implemented an uncerainty estimation method for Full Waveform Inversion/Tomography, based on the Ensemble Kalman Filter called the ETKF-FWI. The goal of this method is to provide systematic uncertainty estimation, in a way that is computationally feasible (albeit still expensive), as part of the inversion itself, rather than being a post-processing procedure.
By treating the FWI as an non-linear operator that changes an initial Earth model, I showed it was possible to integrate it within an Ensemble Kalman filter, which allows propagating uncertainties through an ensemble of models, and approximate a low-rank version of the posterior covariance matrix.