NTMpy: An open source package for solving coupled parabolic differential equations in the framework of the three-temperature model
The NTMpy code package allows for simulating the one-dimensional thermal response of multilayer samples after optical excitation, as in a typical pump-probe experiment. Several Python routines are combined and optimized to solve coupled heat diffusion equations in one dimension, on arbitrary piecewise homogeneous material stacks, in the framework of the so-called three-temperature model. The energy source deposited in the material is modelled as a light pulse of arbitrary cross-section and temporal profile. A transfer matrix method enables the calculation of realistic light absorption in presence of scattering interfaces as in multilayer samples. The open source code is fully object-oriented to enable a user-friendly and intuitive interface for adjusting the physically relevant input parameters. Here, we describe the mathematical background of the code, we lay out the workflow, and we validate the functionality of our package by comparing it to commercial software, as well as to experimental transient reflectivity data recorded in a pump-probe experiment with femtosecond light pulses.