Legacy Code is a nightmare from which I am trying to awake.
Dedalus is a new implementation of old algorithms. Our goal is not to break new algorithmic ground, nor to optimize the well-known spectral methods further for newer hardware, but to make it easier to use and faster to get results. Astrophysics is dominated by high Mach number flows, and thus most of its well-known hydrodynamics solvers are of the finite volume approach. This is well motivated, but there are a number of problems in astrophysics and cosmology that do not feature such compressible flows: turbulence in the atmospheres of stars and planets, the solar wind, early universe density and velocity fluctuations, and the turbulence in accretion disks. For these applications, the extremely high fidelity of spectral solutions can be quite an advantage.
Furthermore, we are interested in developing a code that is written using modern scripting languages, allowing quick editing, fast testing and turnaround, and modern software development tools allowing community participation. Dedalus will probably never be as fast as a dedicated, C or Fortran written spectral code, but we want to see if the savings in human time setting up new computational models can outweigh this loss. Because spectral methods rely heavily on the fast fourier transform, which itself is provided by the FFTW library, it seems that they are an ideal laboratory for this purpose.