Search Results

Now showing 1 - 3 of 3
  • Item
    Simple, accurate, and efficient implementation of 1-electron atomic time-dependent Schrödinger equation in spherical coordinates
    (Amsterdam : North Holland Publ. Co., 2015) Patchkovskii, Serguei; Müller, Harm Geert
    Modelling atomic processes in intense laser fields often relies on solving the time-dependent Schrödinger equation (TDSE). For processes involving ionisation, such as above-threshold ionisation (ATI) and high-harmonic generation (HHG), this is a formidable task even if only one electron is active. Several powerful ideas for efficient implementation of atomic TDSE were introduced by H.G. Muller some time ago (Muller, 1999), including: separation of Hamiltonian terms into tri-diagonal parts; implicit representation of the spatial derivatives; and use of a rotating reference frame. Here, we extend these techniques to allow for non-uniform radial grids, arbitrary laser field polarisation, and non-Hermitian terms in the Hamiltonian due to the implicit form of the derivatives (previously neglected). We implement the resulting propagator in a parallel Fortran program, adapted for multi-core execution. Cost of TDSE propagation scales linearly with the problem size, enabling full-dimensional calculations of strong-field ATI and HHG spectra for arbitrary field polarisations on a standard desktop PC.
  • Item
    NTMpy: An open source package for solving coupled parabolic differential equations in the framework of the three-temperature model
    (Amsterdam : North Holland Publ. Co., 2021) Alber, Lukas; Scalera, Valentino; Unikandanunni, Vivek; Schick, Daniel; Stefano Bonetti
    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.
  • Item
    Lab::Measurement—A portable and extensible framework for controlling lab equipment and conducting measurements
    (Amsterdam : North Holland Publ. Co., 2019) Reinhardt, S.; Butschkow, C.; Geissler, S.; Dirnaichner, A.; Olbrich, F.; Lane, C.E.; Schröer, D.; Hüttel, A.K.
    Lab::Measurement is a framework for test and measurement automatization using Perl 5. While primarily developed with applications in mesoscopic physics in mind, it is widely adaptable. Internally, a layer model is implemented. Communication protocols such as IEEE 488 [1], USB Test & Measurement [2], or, e.g., VXI-11 [3] are addressed by the connection layer. The wide range of supported connection backends enables unique cross-platform portability. At the instrument layer, objects correspond to equipment connected to the measurement PC (e.g., voltage sources, magnet power supplies, multimeters, etc.). The high-level sweep layer automates the creation of measurement loops, with simultaneous plotting and data logging. An extensive unit testing framework is used to verify functionality even without connected equipment. Lab::Measurement is distributed as free and open source software. Program summary: Program Title: Lab::Measurement 3.660 Program Files doi: http://dx.doi.org/10.17632/d8rgrdc7tz.1 Program Homepage: https://www.labmeasurement.de Licensing provisions: GNU GPL v23 Programming language: Perl 5 Nature of problem: Flexible, lightweight, and operating system independent control of laboratory equipment connected by diverse means such as IEEE 488 [1], USB [2], or VXI-11 [3]. This includes running measurements with nested measurement loops where a data plot is continuously updated, as well as background processes for logging and control. Solution method: Object-oriented layer model based on Moose [4], abstracting the hardware access as well as the command sets of the addressed instruments. A high-level interface allows simple creation of measurement loops, live plotting via GnuPlot [5], and data logging into customizable folder structures. [1] F. M. Hess, D. Penkler, et al., LinuxGPIB. Support package for GPIB (IEEE 488) hardware, containing kernel driver modules and a C user-space library with language bindings. http://linux-gpib.sourceforge.net/ [2] USB Implementers Forum, Inc., Universal Serial Bus Test and Measurement Class Specification (USBTMC), revision 1.0 (2003). http://www.usb.org/developers/docs/devclass_docs/ [3] VXIbus Consortium, VMEbus Extensions for Instrumentation VXIbus TCP/IP Instrument Protocol Specification VXI-11 (1995). http://www.vxibus.org/files/VXI_Specs/VXI-11.zip [4] Moose—Apostmodern object system for Perl 5. http://moose.iinteractive.com [5] E. A. Merritt, et al., Gnuplot. An Interactive Plotting Program. http://www.gnuplot.info/ © 2018 The Author(s)