| name | vibeflow-nektar |
| description | Use when preparing, running, debugging, post-processing, or extending VibeFlow/VibeCAE Nektar++ spectral/hp element workflows from 0-caseDict/caseDict, including XML session files, high-order meshes, incompressible/compressible solvers, FieldConvert/NekMesh, boundary conditions, polynomial order, filters, and reusable high-order CFD/PDE templates. |
VibeFlow Nektar++
This skill treats Nektar++ as the high-order spectral/hp element CFD and PDE backend for VibeCAE. It is suitable for high-accuracy flow, wave, stability, and controlled-scale high-order discretization studies.
- Usage mode: generate Nektar++ mesh/session XML from
caseDict, run the solver, and post-process with FieldConvert.
- Development mode: develop session templates, high-order mesh workflows, parameter sweeps, FieldConvert pipelines, or Nektar++ extensions.
When to Use
- A high-order spectral/hp method is needed instead of a conventional low-order FVM/FEM workflow.
- The task involves incompressible or compressible flow, vortex dynamics, stability, waves, or verifiable high-accuracy PDE work.
- Tools such as
NekMesh, FieldConvert, and IncNavierStokesSolver are required.
First Decide: Usage Mode or Development Mode
- Current high-order case setup, execution, and post-processing: use usage mode.
- XML templates, mesh converters, parameter sweeps, plugins, or solver extensions: use development mode.
- Nektar++ commands or library paths are unavailable: hand off to
vibeflow-toolchain first.
- Geometry or high-order meshes are not prepared: hand off to geometry or mesh first.
What to Read First
- PDE, boundaries, initial conditions, Re/Ma, time integration, and output objectives in
0-caseDict/caseDict.
references/nektar-playbook.md
references/nektar-practical-tips.md: software knowledge base, key concepts, failure interpretation, and adapter design notes.
- High-order mesh or convertible mesh under
B-mesh/.
- Existing
C-run/nektar/ and Ref/ material.
Input
0-caseDict/caseDict
- Nektar++ XML mesh/session files, Gmsh meshes, parameter tables, initial fields, or restart files
Output
C-run/nektar/case-*/mesh.xml
C-run/nektar/case-*/session.xml
C-run/nektar/case-*/Allrun / Allclean
.fld, .chk, .vtu, and logs
D-post/nektar_postprocess.py
Recommended Structure
C-run/nektar/
`-- case-1/
|-- mesh.xml
|-- session.xml
|-- logs/
|-- results/
|-- Allrun
`-- Allclean
Usage-Mode Workflow
- Map
caseDict to the Nektar++ session: solver, parameters, variables, boundary regions, initial conditions, time integration, filters, and I/O.
- Prepare or convert the mesh, and check that composites and boundary regions match the
caseDict boundaries.
- Choose polynomial order, quadrature/integration rules, time step, and stabilization settings.
- Run a short-time or short-iteration smoke test.
- Use
FieldConvert to convert .fld/.chk to .vtu or to extract profiles.
- Post-process residuals, energy, force coefficients, field views, and error metrics.
- Write the run status and results back to
caseDict.
Development-Mode Workflow
- Define the development target: session template, high-order mesh pipeline, solver parameter sweep, FieldConvert post-processing, or Nektar++ module extension.
- Write the development note first, recording the Nektar++ version, commands, XML interface, boundary-region mapping, and validation example.
- For high-order mesh workflows, record curved-boundary order and geometry error.
- For solver extensions, start from official examples and do not directly modify the system installation.
- Validate at least solver startup and FieldConvert on a small mesh.
Core Rules
- High-order methods are sensitive to boundary regions, curved geometry, time step, and aliasing.
- The XML session is an execution artifact;
caseDict is the source of truth for physical intent.
- Do not claim high-order geometry accuracy from only a low-order linear mesh; curved-boundary requirements must be stated.
- FieldConvert outputs are the post-processing entry point, but they do not replace preserving the original
.fld/.chk files.
Validation
- Nektar++ solver,
NekMesh, and FieldConvert are available.
- XML files parse successfully.
- The solver can start and generate
.fld or .chk files.
FieldConvert can generate the target format.
- Post-processing can read results and check key quantities.
Fallback Rules
- Boundary regions are unclear: return to the mesh stage.
- PDEs or parameters are unclear: return to
vibeflow-case-dict.
- The environment is unavailable: return to
vibeflow-toolchain.