# Pseudo-spectral method

﻿
Pseudo-spectral method

Pseudo-spectral methods are a class of numerical methods used in applied mathematics and scientific computing for the solution of PDEs, such as the direct simulation of a particle with an arbitrary wavefunction interacting with an arbitrary potential. They are related to spectral methods and are used extensively in computational fluid dynamics and other areas, but are demonstrated below on an example from quantum physics.

Background

The Schrödinger wave equation,

: $H psi\left(mathbf\left\{r\right\},t\right) = i hbar frac\left\{partial\right\}\left\{partial t\right\} psi\left(mathbf\left\{r\right\},t\right)$

can be written

: $frac\left\{H\right\}\left\{i hbar\right\} psi\left(mathbf\left\{r\right\},t\right) = frac\left\{partial\right\}\left\{partial t\right\} psi\left(mathbf\left\{r\right\},t\right)$

which resembles the linear ordinary differential equation

: $r f\left(t\right) = frac\left\{d\right\}\left\{dt\right\} f\left(t\right)$

with solution

: $f\left(t\right) = A e^\left\{r t\right\} ,!$

In fact, using the theory of linear operators, it can be shown that the general solution to the Schrödinger wave equation is

: $psi\left(mathbf\left\{r\right\},t\right) = e^\left\{-i H t / hbar\right\} psi\left(mathbf\left\{r\right\},0\right)$

where exponentiation of operators is defined using power series. Now remember that

: $H = T + V ,!$

where the kinetic energy $T$is given by

: $T = frac\left\{p^2\right\}\left\{2 m\right\} = - frac\left\{hbar^2\right\}\left\{2m\right\} \left\{ abla\right\}^2$

and the potential energy $V$ often depends only on position (i.e., $V=V\left(mathbf\left\{r\right\}\right)$). We can write

: $psi\left(mathbf\left\{r\right\},t\right) = e^\left\{-i \left(T + V\left(mathbf\left\{r\right\}\right)\right) t / hbar\right\} psi\left(mathbf\left\{r\right\},0\right).$

It is tempting to write

: $psi\left(mathbf\left\{r\right\},t\right) = e^\left\{-i T t / hbar\right\} e^\left\{-i V\left(mathbf\left\{r\right\}\right) t / hbar\right\}psi\left(mathbf\left\{r\right\},0\right)$

so that we may treat each factor separately. However, this is only true if the operators $T$ and $V\left(mathbf\left\{r\right\}\right)$ commute, which is not true in general. Luckily, it turns out that

: $psi\left(mathbf\left\{r\right\},t\right) approx e^\left\{-i V\left(mathbf\left\{r\right\}\right) t / 2 hbar\right\} e^\left\{-i T t / hbar\right\} e^\left\{-i V\left(mathbf\left\{r\right\}\right) t / 2 hbar\right\}psi\left(mathbf\left\{r\right\},0\right)$

is a good approximation for small values of $t$. This is known as the symmetric decomposition. The heart of the pseudo-spectral method is using this approximation iteratively to calculate the wavefunction $psi\left(mathbf\left\{r\right\},t\right)$ for arbitrary values of $t$.

The method

For simplicity, we will consider the one-dimensional case. The method is readily extended to multiple dimensions.

Given $psi\left(x,t\right)$, we wish to find $psi\left(x,t + Delta t\right)$ where $Delta t$ is small. The first step is to calculate an intermediate value $phi_\left\{1\right\}\left(x\right)$ by applying the rightmost operator in the symmetric decomposition,

: $phi_\left\{1\right\}\left(x\right) = e^\left\{-i V\left(mathbf\left\{r\right\}\right) Delta t / 2 hbar\right\}psi\left(x,t\right)$

This requires only a pointwise multiplication. The next step is to apply the middle operator,

: $phi_\left\{2\right\}\left(x\right) = e^\left\{-i T Delta t / hbar\right\} phi_\left\{1\right\}\left(x\right)$

This is an infeasible calculation to make in configuration space. Fortunately, in momentum space, the calculation is greatly simplified. If $Phi_\left\{1\right\}\left(k\right)$ is the momentum space representation of $phi_\left\{1\right\}\left(x\right)$, then

: $Phi_\left\{2\right\}\left(k\right) = e^\left\{i hbar k^\left\{2\right\} Delta t / 2 m\right\} Phi_\left\{1\right\}\left(k\right)$

which also requires only a pointwise multiplication. Numerically, $Phi_\left\{1\right\}\left(k\right)$ is obtained from $phi_\left\{1\right\}\left(x\right)$ using the Fast Fourier transform (FFT) and $phi_\left\{2\right\}\left(x\right)$ is obtained from $Phi_\left\{2\right\}\left(k\right)$ using the inverse FFT.

The final calculation is

: $psi\left(x,t + Delta t\right) = e^\left\{-i V\left(mathbf\left\{r\right\}\right) Delta t / 2 hbar\right\}phi_\left\{2\right\}\left(x\right)$

This sequence can be summarized as

: $psi\left(x,t + Delta t\right) = e^\left\{-i V\left(mathbf\left\{r\right\}\right) Delta t / 2 hbar\right\} mathcal\left\{F\right\}^\left\{-1\right\} \left[e^\left\{i hbar k^\left\{2\right\} Delta t / 2 m\right\} mathcal\left\{F\right\} \left[e^\left\{-i V\left(mathbf\left\{r\right\}\right) Delta t / 2 hbar\right\}psi\left(x,t\right)\right] \right]$

Analysis of algorithm

If the wavefunction is approximated by its value at $n$ distinct points, each iteration requires 3 pointwise multiplications, one FFT, and one inverse FFT. The pointwise multiplications each require $O\left(n\right)$ effort, and the FFT and inverse FFT each require $O\left(n lg n\right)$ effort. The total computational effort is therefore determined largely by the FFT steps, so it is imperative to use an efficient (and accurate) implementation of the FFT. Fortunately, many are freely available.

Error analysis

The error in the pseudo-spectral method is overwhelmingly due to discretization error.

Wikimedia Foundation. 2010.

### Look at other dictionaries:

• Spectral method — Spectral methods are a class of techniques used in applied mathematics and scientific computing to numerically solve certain Dynamical Systems, often involving the use of the Fast Fourier Transform. Where applicable, spectral methods have… …   Wikipedia

• Least-squares spectral analysis — (LSSA) is a method of estimating a frequency spectrum, based on a least squares fit of sinusoids to data samples, similar to Fourier analysis. [cite book | title = Variable Stars As Essential Astrophysical Tools | author = Cafer Ibanoglu |… …   Wikipedia

• Split-step method — In numerical analysis, the split step (Fourier) method is a pseudo spectral numerical method used to solve nonlinear partial differential equations like the nonlinear Schrödinger equation. The name arises for two reasons. First, the method relies …   Wikipedia

• Monte Carlo method — Not to be confused with Monte Carlo algorithm. Computational physics …   Wikipedia

• List of mathematics articles (P) — NOTOC P P = NP problem P adic analysis P adic number P adic order P compact group P group P² irreducible P Laplacian P matrix P rep P value P vector P y method Pacific Journal of Mathematics Package merge algorithm Packed storage matrix Packing… …   Wikipedia

• List of numerical analysis topics — This is a list of numerical analysis topics, by Wikipedia page. Contents 1 General 2 Error 3 Elementary and special functions 4 Numerical linear algebra …   Wikipedia