11 CLI configuration-file reference
13 top-level input blocks and composition rules
11.1 Overview
Wake CFD CLI input files contain 13 top-level JSONC blocks. Each block maps to a specific configuration domain. This page provides a quick reference to each block’s role and links to detailed documentation. For complete type definitions, enums, and defaults, consult the JSON schema or section-specific examples.
11.2 Input blocks
| Block | Role | Details |
|---|---|---|
mesh |
One or more mesh files | Mesh |
analysis |
Solver, time, and dimension | Analysis |
models |
Euler/NS, compressibility, and turbulence | Physical models |
materials |
EOS, viscosity, thermal conductivity, and material properties | Materials |
reference |
Force, moment, and coefficient-normalization reference values | Reference values |
domains |
Domains and tagged-union boundary conditions | Domains and boundary conditions |
interfaces |
Connections between domains | Interfaces |
numerical_method |
Solver-specific numerical methods, CFL, and linear solvers | Numerical methods |
initialization |
Uniform, expression, restart, and FR presets | Initialization |
run_control |
Iteration, convergence, and unsteady time stepping | Run control and convergence |
outputs |
Restart, volume/surface/slice, and diagnostics | File output |
monitoring |
Console, residual CSV, and named monitors | Monitoring |
expert_parameters |
Internal tuning for GPU, Krylov, AMG, and more | Expert parameters |
11.3 JSONC syntax
Arrays: Use array syntax for all list-valued keys. Both object arrays and string arrays must use brackets.
"mesh": [{ "file_name": "wing.cgns" }]
"mesh_zones": ["fluid"]
"mesh_markers": ["WALL", "FARFIELD"]
Comments: Line (//) and block (/* */) comments are permitted. Trailing commas are not valid JSONC and trigger parse errors.
Enums: Some fields accept case-insensitive aliases. Use canonical names in new files for clarity.
11.4 Configuration composition
Wake CFD applies configuration layers in the following order:
1. Base file (the file passed to the solver)
2. $extends chain (resolved recursively)
3. --overlay (JSON Merge Patch, RFC 7396)
4. --patch (JSON Patch, RFC 6902)
Example:
Linux:
./wake_3d_mixed case.jsonc --overlay mach-sweep.json --patch cfl-adjust.jsonWindows PowerShell:
& "C:\Program Files\Wake CFD\bin\wake_3d_mixed.exe" case.jsonc --overlay mach-sweep.json --patch cfl-adjust.jsonFor composition mechanics and examples, see Running Wake CFD. For input-file inheritance patterns, see Input-file structure.