Metadata-Version: 1.2
Name: quantum_dynamics
Version: 0.1.dev13
Summary: Quantum mechanics in 1D.
Home-page: https://compphys.solanpaa.fi
Author: Janne Solanpää
Author-email: janne+compphys@solanpaa.fi
License: Boost Software License 1.0
Description-Content-Type: UNKNOWN
Description: quantum_dynamics -- simulation of 1D time-dependent Schrödinger equation
        ========================================================================
        
        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:
          
          1. finite-difference approximation of the laplacian operator with Dirichlet
             boundary conditions at the endpoints of the simulation grid
          2. exponential mid-point rule for the time-evolution operator
          3. krylov-subspace based implementation of the matrix exponential
        
        Upon successful installation, two executables are copied to your PATH:
          * qdyn_laser
          * plot_time_evolution
        
        qdyn_laser
        ----------
        
        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
        
        ``coordinate_grid``
            The gridpoints of the coordinate space used in the calculation.
        
        ``savetimes``
            The times corresponding to the saved wavefunction values in the file.
        
        ``wavefunction``
            A 2D array of values of the wavefunction. The first index corresponds to
            ``coordinate_grid`` and the second index to ``savetimes``.
        
        ``final_wavefunction``
            Wavefunction values at the end of the simulation.
        
        ``laser``
            The laser electric field for `all` timesteps. First column is times, second
            the laser electric field values.
        
        ``tise_hamiltonian``
            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'])
            
        
        
        plot_time_evolution
        -------------------
        
        This can be used to visualize the time-evolved density calcualted with
        `qdyn_laser`. For usage instructions, please see ``plot_time_evolution --help``.
        
        Authors
        -------
        Janne Solanpää
        
Keywords: numerics linear algebra schrödinger quantum
Platform: UNKNOWN
Classifier: License :: OSI Approved :: Boost Software License 1.0 (BSL-1.0)
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Scientific/Engineering :: Physics
Requires-Python: >=3.5
