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 summaryProgram title: NTMpy v.0.1.1CPC Library link to program files: https: //doi.org/10.17632/5czr76gmwr.1Developer's repository link: https://github.com/udcm-su/NTMpyCode Ocean capsule: https://codeocean.com/capsule/5661399Licensing provisions: MIT licenseProgramming language: PythonExternal routines: Python 3.5 or higher, numpy, matplotlib, bsplines, tqdmNature 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. (C) 2021 The Author(s). Published by Elsevier B.V.

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

Bonetti, Stefano
2021-01-01

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 summaryProgram title: NTMpy v.0.1.1CPC Library link to program files: https: //doi.org/10.17632/5czr76gmwr.1Developer's repository link: https://github.com/udcm-su/NTMpyCode Ocean capsule: https://codeocean.com/capsule/5661399Licensing provisions: MIT licenseProgramming language: PythonExternal routines: Python 3.5 or higher, numpy, matplotlib, bsplines, tqdmNature 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. (C) 2021 The Author(s). Published by Elsevier B.V.
File in questo prodotto:
File Dimensione Formato  
1-s2.0-S0010465521001028-main.pdf

accesso aperto

Tipologia: Versione dell'editore
Licenza: Creative commons
Dimensione 464.62 kB
Formato Adobe PDF
464.62 kB Adobe PDF Visualizza/Apri

I documenti in ARCA sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10278/3739809
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 10
  • ???jsp.display-item.citation.isi??? 9
social impact