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
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 |
CGNS notes
- Wake CFD reads
ZoneBC_t/BC_tnode names (cg_boco_info). FamilyName_tis 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" }
]
}