13  Mesh

Formats, multiple zones, scope namespaces, and scale_factor

13.1 What this setting is

A mesh is the computational model that divides the analysis space into finite cells. In Wake CFD, the mesh file provides names called zones and markers; domains use zones as physical regions and boundary conditions use markers as boundary faces. The required resolution and naming for geometry, boundary layers, and wakes are therefore the starting point for analysis setup.

13.2 Configure in the GUI

Wake CFD Desktop Outline and Properties docks: an ONERA M6 CGNS mesh expanded to Zone_0 with WING, SYMMETRY and FARFIELD markers, and mesh properties showing CGNS format, scale factor 1.0, 1 zone, 306577 nodes, 294912 cells and 3 markers
Figure 13.1: An imported mesh in the project outline, with its zone and boundary markers expanded, and the mesh properties below. Format, Scale factor, and Scope are editable; File, Dimension, and the element counts are read from the file.

Use Home → Import Mesh or right-click the Meshes tree node to add a CGNS, SU2, or Gmsh file. Import as link to keep the source file read-only, or as editable to save a project-owned CGNS copy when the project is saved. Select an imported mesh in the tree to inspect its zones and boundary markers; select the mesh entry to edit its properties. Zone and marker names are then assigned in Domains, not in the mesh block.

GUI location / control Input key What it does
Import Mesh → selected file mesh[].file_name Adds a mesh file; the File property is read-only after import.
Mesh Properties → Format mesh[].format Sets the reader format for the imported file.
Mesh Properties → Scale factor mesh[].scale_factor Converts mesh coordinates to metres; use 0.001 for millimetres.
Mesh Properties → Scope mesh[].scope Names a mesh file when a case uses multiple files.
Mesh tree → zones / markers — Shows imported names for later domain and boundary assignment; these names are not keys in mesh[].

The GUI import picker lists CGNS, SU2, and Gmsh. UGRID can be supplied in JSONC; it is not listed in that picker. The mesh block is an array, even for one file.

13.3 Input keys

Key Required Meaning
file_name ✓ Path to the mesh file
format cgns (default), su2, gmsh, or ugrid; set it explicitly for non-CGNS files
scale_factor Coordinate scale factor (e.g. mm→m = 0.001); see scale_factor below
scope File-level namespace for zone paths across multiple files; see Multiple zones below

The array must contain at least one file, except when initialization.type: "restart" loads a full mesh from the restart file.

13.4 Supported formats

Format format value Notes
CGNS cgns Recognizes boundaries by BC_t node name
SU2 su2 Recognizes boundaries by MARKER_TAG
Gmsh gmsh Uses msh2 and physical-group names
AFLR UGRID ugrid Available to the solver through JSONC; Desktop import currently lists CGNS, SU2, and Gmsh

format accepts these four values. When it is omitted, the solver uses cgns; it does not select a format from the filename extension. Set it explicitly for SU2, Gmsh, or UGRID input. Desktop import recognizes supported extensions and writes the detected format into the case.

13.5 Multiple zones (multiple files)

With more than one mesh file, every entry needs a distinct, nonempty scope, and a scope cannot contain /. A zone is then addressed as scope/zone (or by the file’s scope when selecting the whole file). Boundary markers keep their names and are resolved within the bound domain’s zone; do not add the scope prefix to mesh_markers.

13.6 Boundary-name matching

domains[].boundaries[].mesh_markers in JSONC and mesh-file marker names are matched without regard to ASCII letter case, within the domain’s bound zone. The spelling otherwise needs to match. To inspect zone, section, and marker names before authoring a case, run wake_grid <mesh_file> --bc. On mismatch:

Mesh location has no matching config boundary
Format Boundary-name source Notes
CGNS BC_t node name Not Family name (currently unsupported)
SU2 MARKER_TAG In the .su2 file
Gmsh Physical-group name Physical Surface("inlet") in .geo
Warning

CGNS notes

  • Wake CFD reads ZoneBC_t/BC_t node names (cg_boco_info).
  • FamilyName_t is unsupported.
  • ICEM CFD: Part names are automatically converted to BC_t names.
  • Pointwise: Set BC names directly.
  • Names can be lost during Gmsh-to-CGNS conversion; use Gmsh directly when possible.

13.7 scale_factor

Use this for coordinate-unit conversion. All coordinates are internally converted to SI units (m) before processing.

13.8 JSONC examples

For a single CGNS mesh, keep the required array shape. The default format can be omitted:

{ "mesh": [{ "file_name": "naca0012.cgns" }] }

Convert millimetre coordinates to metres with scale_factor:

{
  "mesh": [
    { "file_name": "model_mm.cgns", "format": "cgns", "scale_factor": 0.001 }
  ]
}

Use distinct scopes for multiple files:

{
  "mesh": [
    { "file_name": "rotor.cgns", "format": "cgns", "scope": "rotor" },
    { "file_name": "stator.su2", "format": "su2", "scope": "stator" }
  ]
}