This paper describes a nonlinear, three-dimensional spectral collocation method for the simulation of the incompressible Navier–Stokes equations under the Boussinesq approximation, motivated by geophysical and environmental flows. These flows are driven by the interaction of stratified fluid with topography, which this model accurately accounts for by using a mapped coordinate system. The spectral collocation method is implemented with both a Fourier trigonometric expansion and the Chebyshev polynomials, as appropriate for the domain boundary conditions. The coordinate mapping prohibits the use of existing, fast solution methods that rely on the separation of variables, so a preconditioner based on the approximate solution of a corresponding finite-difference problem with geometric multigrid is used. The model is parallelized with the Message Passing Interface library, and it runs effectively on shared and distributed-memory systems. Copyright © 2013 John Wiley & Sons, Ltd.