Quantum mechanics in 1D.
The quantum_dynamics package contains tools for simulation of 1D time-dependent Schrödinger equation. The package allows for simulation of 1D model potentials and time-dependent external interactions, e.g., an laser electric field in the dipole approximation.
This package has been created as a reference solution to an exercise in the computational physics course at Tampere University of Technology in Spring 2018.
The key numerical methods behind the package are:
- finite-difference approximation of the laplacian operator with Dirichlet boundary conditions at the endpoints of the simulation grid
- exponential mid-point rule for the time-evolution operator
- krylov-subspace based implementation of the matrix exponential
- Upon successful installation, two executables are copied to your PATH:
This simulates the electron in 1D soft coulomb potential (“1D hydrogen”) under laser electric field with sin^2 envelope and cosine carrier wave. Please consult the help of the script for all options: qdyn_laser --help.
After a successful simulation, an outputfile of HDF5-format is created. It contains the following datasets and groups
- The gridpoints of the coordinate space used in the calculation.
- The times corresponding to the saved wavefunction values in the file.
- A 2D array of values of the wavefunction. The first index corresponds to coordinate_grid and the second index to savetimes.
- Wavefunction values at the end of the simulation.
- The laser electric field for all timesteps. First column is times, second the laser electric field values.
The time-independent part of the Hamiltonian matrix. It’s saved as a sparse matrix and can be loaded with quantum_dynamics.utils.load_sparse_matrix like:
from quantum_dynamics.utils import load_sparse matrix import h5py with h5py.File("myfile.h5", "r") as f: H0 = load_sparse_matrix(f['tise_hamiltonian'])
This can be used to visualize the time-evolved density calcualted with qdyn_laser. For usage instructions, please see plot_time_evolution --help.
Release history Release notifications
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size & hash SHA256 hash help||File type||Python version||Upload date|
|quantum_dynamics-0.1.dev14-py3-none-any.whl (21.2 kB) Copy SHA256 hash SHA256||Wheel||py3|
|quantum_dynamics-0.1.dev14.tar.gz (14.5 kB) Copy SHA256 hash SHA256||Source||None|