Litcius/Paper detail

NTMpy: An open source package for solving coupled parabolic differential equations in the framework of the three-temperature model

Lukas Alber, Valentino Scalera, Vivek Unikandanunni, Daniel Schick, Stefano Bonetti

2021Computer Physics Communications18 citationsDOIOpen Access PDF

Abstract

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. Program title: NTMpy v.0.1.1 CPC Library link to program files: https://doi.org/10.17632/5czr76gmwr.1 Developer's repository link: https://github.com/udcm-su/NTMpy Code Ocean capsule: https://codeocean.com/capsule/5661399 Licensing provisions: MIT license Programming language: Python External routines: Python 3.5 or higher, numpy, matplotlib, bsplines, tqdm Nature of problem: 1-dimensional coupled non linear partial differential equations; diffusion and relaxation dynamics formultiple systems and multiple layers. Solution method: Simulate the diffusion and relaxation dynamics of up to 3 coupled systems via an object oriented user interface. In order to approximate the solution and its derivatives in space B-Spline interpolation is used. The solution is developed in time via the Explicit Euler method. Additional comments including restrictions and unusual features: A routine to automatically select the ideal time step for stability of the algorithm is implemented. Routines for output of raw data in order to post process and pre- made visualization routines are implemented.

Topics & Concepts

Python (programming language)Computer scienceSource codeComputational sciencePartial differential equationAdvanced Photon SourcePhysicsOpticsProgramming languageBeamlineBeam (structure)Quantum mechanicsSpectroscopy and Quantum Chemical StudiesPhotochemistry and Electron Transfer StudiesSpectroscopy Techniques in Biomedical and Chemical Research
NTMpy: An open source package for solving coupled parabolic differential equations in the framework of the three-temperature model | Litcius