Menu

Features

Anonymous Ulf Lorenz

This page gives a brief overview of the implemented features in the latest development version. It should be pointed out that most of the code can handle density operators and wave functions; you need to change a few lines of code (use a commutator Liouvillian instead of a Schroedinger equation solver, for example), but much of the code is agnostic to the actual state that you deal with.

Latest released version is 0.3.6

  • Grids

    • PlaneWaveDof: equally-spaced grid / plane wave expansion
    • SphericalHarmonicsDof: expansion in spherical harmonics and corresponding grid.
    • CoupledChannelsDof: dummy grid for coupled channels / electronic states.
    • AbstractDof: dummy grid for an abstract set of states, such as an eigenstate basis.
  • Initial wave functions

    • product of one-dimensional primitive one-dimensional states
    • random wavefunctions
    • zero wavefunctions
    • pure density operators from a wave function
    • unit density operators
    • zero density operators
    • more complex states can be built by summing primitive states.
    • primitive one-dimensional states:
      • Gaussians
      • harmonic oscillator eigenstate
      • Morse oscillator eigenstate
      • Projection on a DVR grid point (for use with coupled channels)
      • Spherical harmonics
      • plane waves
      • a given one-dimensional state as input
  • Operators

    • Cartesian kinetic energy (2m)^-1 d^2/dx^2 (assumes an FFTGrid)
    • Rotational kinetic energy L^2 / 2I
    • Momentum operator
    • coordinate operator
    • constants
    • intervals
    • user-specifiable one-dimensional potential
    • harmonic potential
    • Mecke dipole
    • Morse potential
    • oscillating laser fields, implemented are sin^2 and Gaussian shape functions
    • time-dependent function
    • operator given in matrix form
    • projection and transition operators for coupled channels
    • complex potentials (absorbing boundary conditions)
    • Taylor series potentials
    • 1D and ND projections onto a given state
  • Expressions (components of the differential equation)

    • Schroedinger equation
    • Commutator Liouvillian
    • Lindblad dissipation
    • Redfield dissipation
    • Liouvillian that applies an operator to the right/left of a density operator
    • Equation system that handles multiple coupled equations
  • Propagators, both real and imaginary time

    • Runge-Kutta solver of order 4/5, 5, 7/8, real time
    • Bulirsch-Stoer solver, real time
    • expansion in Chebychev polynomials, real and imaginary time
    • expansion in Faber polynomials, real time
    • diagonalization (solver for time-independent Schroedinger equation)
  • Open-systems functionality

    • functions to set up a Lindblad Liouvillain, given eigenstates/-energies and a spectrum
  • Other:

    • Plotting, for one-dimensional wave functions
    • literal suffixes to input values in other units
    • Absorbing boundary conditions using power functions at the grid boundaries.
    • relaxation utilities to get the ground state or low excited states
    • observer that writes out state properties during propagation
    • observer that calculates and stores expectation values during propagation
    • functions to read in / write out data from/to a file
    • manipulators for easy DVR/FBR transformations and calculation of expectation values
    • RedfieldFactory to set up a Redfield Liouvillian numerically using only the bath correlation functions and system-side coupling operators.
    • HarmonicOscillatorFactory to simplify setup of harmonic oscillator problems
    • operator transformations plus simple interface to simplify operator structure (combining, e.g., multiple potentials into a single potential)
  • Python interface

    • plotting of 1D and 2D functions with a GUI (using matplotlib)

Related

Wiki: Main