An arbitrary order diffusion algorithm for solving Schrodinger equations
Additional Document Info
We describe a simple and rapidly converging code for solving the local Schrdinger equation in one, two, and three dimensions that is particularly suited for parallel computing environments. Our algorithm uses high-order imaginary time propagators to project out the eigenfunctions. A recently developed multi-product, operator splitting method permits, in principle, convergence to any even order of the time step. We review briefly the theory behind the method and discuss strategies for assessing convergence and accuracy. A forward time step, single product fourth-order factorization of the imaginary time evolution operator can also be used. Our code requires one user defined function which specifies the local external potential. We describe the definition of this function as well as input and output functionalities and convergence criteria. Compared to our previously published code [Computer Physics Communications 178 (2008) 835], the new algorithms can converge at a rate that is only limited by machine precision. Program summary: Program title: ndsch. Catalogue identifier: AEDR_v1_0. Program summary URL: http://cpc.cs.qub.ac.uk/summaries/AEDR_v1_0.html. Program obtainable from: CPC Program Library, Queen's University, Belfast, N. Ireland. Licensing provisions: Standard CPC licence, http://cpc.cs.qub.ac.uk/licence/licence.html. No. of lines in distributed program, including test data, etc.: 9282. No. of bytes in distributed program, including test data, etc.: 77 824. Distribution format: tar.gz. Programming language: Fortran 90. Computer: Tested on x86, amd64, and Itanium2 architectures. Should run on any architecture providing a Fortran 90 compiler. Operating system: So far tested under UNIX/Linux, Mac OSX and Windows. Any OS with a Fortran 90 compiler available should suffice. RAM: 2 MB to 16 GB, depending on system size. Classification: 6.10. External routines: FFTW3 (http://www.fftw.org/), Lapack (http://www.netlib.org/lapack/). Nature of problem: Numerical calculation of the lowest few hundred states of 1D, 2D, and 3D local Schrdinger equations in configuration space. Solution method: Arbitrary even-order multi-product operator splitting, as well as a single product fourth-order factorization, of the imaginary time evolution operator. Additional comments: Sample input files for the 1D, 2D, and the 3D version as well as a gnuplot script for assessing convergence are included in the distribution file. Running time: Seconds to hours, depending on system size. 2009 Elsevier B.V. All rights reserved.