  Scattering-type scanning near-field optical microscopy (s-SNOM) is a powerful
technique for extreme subwavelength imaging and spectroscopy, with around 20 nm
spatial resolution. But quantitative relationships between experiment and
material properties requires modelling, which can be computationally and
conceptually challenging. In this work, we present snompy an open-source Python
library which contains implementations of two of the most common s-SNOM models,
the finite dipole model (FDM) and the point dipole model (PDM). We show a
series of typical uses for this package with demonstrations including
simulating nano-Fourier transform infrared (FTIR) spectra and recovering
permittivity from experimental s-SNOM data. We also discuss the challenges
faced with this sort of modelling, such as competing descriptions of the models
in literature, and finite size effects. We hope that snompy will make
quantitative s-SNOM modelling more accessible to the wider research community,
which will further empower the use of s-SNOM for investigating nanoscale
material properties.
