The code's lineage can be traced back through Ron Henderson's prism code and ultimately to the original spectral element code nekton — in many ways the implementation is similar to prism (see Henderson & Karniadakis (1995) J Comput Phys 122: 191–217) but without mortar element patching or mesh adaptation. One noteworthy difference is that semtex supports cylindrical as well as Cartesian coordinates, and with full spectral convergence in all directions: see Blackburn & Sherwin (2004) J Comput Phys 197: 759–778 for a detailed description of the method. In addition to an incompressible Navier–Stokes solver, source is also provided for an elliptic solver that will deal with Laplace, Poisson and Helmholtz problems.
Please note that semtex is a research code and is provided 'as-is' with the understanding that it will be used mainly by other computer-literate researchers in computational fluid dynamics. It is not guaranteed to work or to provide correct results, and neither I or any employer accept any liability for detriment or loss consequent on your use of the code. Please see the terms of the Gnu General Public License (GPL) under which the code is released for public use. On the other hand, I'd be happy to hear of your experiences with using the code and your types of applications and results.
If through your use of the code you manage to obtain publishable results, I would be pleased if you could cite Blackburn & Sherwin (2004), where the numerical method is described in some depth, particular to the cylindrical-coordinate formulation.
(September 2015) Release of accompanying Dog linear flow stability analysis software package. This enables eigenmodal flow stability analysis of two-dimensional flows with either two- or three-component base flows which may either be steady or periodic in time. Additionally the package will compute optimal initial conditions for finite-time transient growth. See description of the method in Barkley, Blackburn & Sherwin (2008), and the user guide below.
(September 2015) Release of accompanying Scat scalar transport extension to standard Semtex DNS. Includes Boussinesq buoyancy. See description of the method in Hartl, Blackburn & Smits (2014).
I'm afraid that I do not have much time to answer routine questions about making semtex compile, running examples, etc. Please consult the user guide for information on these matters. I will be happy to hear of bugs, and even better, suggestions about how to fix them, although I cannot promise to remedy problems on a timely basis (and a big thank you to those who have contributed fixes to some niggling bugs). The source code distribution is occasionally updated, however, the code is quite mature now and does not often change.
We supply two utilities that work with 3rd-party mesh generators, and a standalone isosurface visualisation tool.
Python script that will produce semtex session files from quad meshes generated by gmsh (open-source: see http://www.geuz.org/gmsh/). This utility is included in the current source code distribution.
Converter from Fluent Inc's gambit mesh generator to semtex session file format. Written by Erik Torres and Jörg Stiller from the ILR group at TU-Dresden. With user guides in German and English. Source code. With the deletion of gambit from the Ansys code suite, note that the Ansys workbench Fluent .msh format is the same as gambit's, albiet in binary. To get an ASCII .msh file (the starting point for gambit2semtex), set environment variable AWP_WRITE_FLUENT_MESH_ASCII=1 before using workbench.
While the user guide shows a number of visualisations made with the commercial Tecplot code, both VisIt and Paraview should be able to read Tecplot .plt files too. One can alternatively convert output data files to VTK format, also readable by VisIt or Paraview.
Dog release 2.0 (September 2015). Linear flow stability analysis package that builds with Semtex release 8.1. Unpack at same level as Semtex (not within it).
Scat release 6.0 (September 2015). Extension of DNS code in Semtex to include transport of a single scalar field. Includes Boussinesq buoyancy term — check the README guide for further explanation. Builds with Semtex release 8.1. Unpack at same level as Semtex (not within it).
Semtex release 7_4 (October 2013). Spectral Vanishing Viscosity (SVV) has been added to the standard DNS code, but is inactive by default.
Semtex release 7_3 (October 2013). This version employs the "alternating skew symmetric" form of the nonlinear terms in the Navier–Stokes equations (for speed and robustness) by default (though other forms are also available), and does not employ any form of dealiasing (in the interests of simplicity for potential users of the API). Also it includes code for a variety of spatially-varying body forces, including localised damping (sponge regions) and Coriolis effects, coded by Thomas Albrecht.
Semtex final Release 6 (2013).
Gambit2semtex tarball: postprocess Gambit output to produce semtex session files.
Sview tarball: openGL-based isosurface visualisation tool, works directly with semtex mesh and field file dumps. Scriptable and/or interactive, generate TIFF output.
Dog user guide (PDF).
Slides from 2015 Crete-VI summer school (PDF).
Nektar++ spectral element code project (Spencer Sherwin and Mike Kirby).
Nek5000 spectral element code (Paul Fischer).