• Could someone explain the link (if any) between the spectral methods (SM), as presented for example here and the so called spectral volume methods (SV) and spectral difference methods (SD) for CFD ?
  • Are SV and SD the applications of SM to CFD ?
  • If not, is there an application to CFD of SM (that would then have no link with SV and SD) ?

1 Answer 1


"Spectral methods" usually means methods which make use of global basis functions. Fourier spectral methods use sine and cosine, and are used when you have periodic boundary conditions. Chebyshev methods use Chebyshev polynomials and are useful in non-periodic cases. These two methods are used in DNS, see e.g., hit3d which uses fourier and periodic bc, and channelflow which uses fourier in two directions and chebyshev in third direction to model flow through channels. Fourier uses uniform points while Chebyshev uses roots of some polynomials. So these methods are usually restricted to rectagular/cubical domains. If you can map your domain to a cartesian domain, then you can still apply these methods, see e.g., the excellent chebfun software which has recently added support for this.

For complicated geometries, you will have to use unstructured grids. In these cases, one uses "spectral element" methods, which are essentially finite element methods that use high degree polynomial basis functions with compact support. For examples of such methods used in CFD, see nek5000 which solves incompressible Navier-Stokes equations and nektar++ which has a lot more models.

"Spectral difference" and "spectral volume" methods are in the same spirit as "spectral element" methods. They use local basis functions but you can achieve "spectral-like" accuracy by using high degree polynomials.

  • $\begingroup$ I disagree that Chebyshev methods are restricted to rectangular domains. They can be used whenever finite and non-periodic boundaries are needed. $\endgroup$
    – user20857
    Sep 4, 2016 at 20:36
  • $\begingroup$ That is interesting to know. Are there any papers on this ? I suppose this requires mapping your 2-d domain to a square domain and then applying the usual tensor product chebyshev approximation. $\endgroup$
    – cfdlab
    Sep 6, 2016 at 3:07
  • $\begingroup$ I have updated the answer to include case of domains that can be mapped to a Cartesian domain. $\endgroup$
    – cfdlab
    Sep 6, 2016 at 3:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.