Post-Processing (Mesh) Mode
Post-Processing mode embeds the full VSCode-MDPA-Preview viewer — KKSS drives the extension's own host code, so behavior matches the extension exactly. This page summarizes the highlights; see the extension documentation for the complete guide.

What you can do
- Inspect MDPA models: a vtk.js 3D view with a navigable ModelPart/SubModelPart outline, toggleable layers, node IDs, a background grid, an orientation cube, and a clip plane.
- Visualize results: nodal/elemental/conditional field data with colormaps. The Field panel offers combinable display modes — solid contour, isosurfaces, vector quivers, and a deformed-shape warp driven by a displacement field — that can be layered together; VTK time-series play back on a timeline, and new step files written by a running simulation extend it automatically.
- Check mesh quality: aspect/edge ratio, min/max angles, and size gradation histograms with bad-element highlighting.
- Analyze mesh size: the Mesh Size panel (in the Advanced toolbar menu) reports nodal size (Kratos
NODAL_H— min distance to a node sharing an element) and element size (mean edge length) as box-whisker statistics with the standard deviation, and highlights the IQR-outlier small/large elements. - Modify meshes with full undo/redo and saveable JSON recipes, grouped in six collapsible sidebar subcategories: Element order & topology (merge coincident nodes, remove orphans, scale/translate/rotate, delete/rename/extract SubModelParts, linear→quadratic and the inverse quadratic→linear, uniform refinement, simplexify), Remeshing (MMG) (MMG remeshing — including a
size = ƒ(h)mode that sets each node's target size from a formula over the nodal size, the whole-mesh statistics and the coordinates, with per-SubModelPart overrides — and level-set splitting, both run in a worker thread with live progress and cancel), Smoothing & renumbering (Taubin/Laplacian smoothing, RCM/Morton/Hilbert reordering, space-filling-curve partitioning), Selection & combination (box/plane crop, merge another mesh file with optional coincident-node weld), Fields (a safe formula field calculator and nodal↔elemental averaging), and Sphere elements. - Work with SPHERE / particle meshes: one-node elements render as real sphere glyphs scaled in model space (Advanced ▸ Spheres…), automatically for a mesh carrying a
RADIUSfield and with a suggested radius — half the median nearest-neighbour spacing — for the usual radius-less DEM/peridynamics file. Set element radius is an ordinary undoable operation that creates or scales the field, optionally limited to one SubModelPart. - Find inverted elements: Advanced ▸ Face normals draws an arrow on every surface and boundary face; a cell wound against its neighbours points the wrong way, is counted and highlighted in red — invisible in the quality statistics, and a hard error for the solver.
- Save and export: overwrite the source (with a one-time warning), Save As, or export the whole model — a single SubModelPart, or just the boundary skin of the volume cells (Advanced ▸ Export skin…) — to MDPA, VTK, VTU, VTP, STL, OBJ, or PLY, plus ~36 extended formats via meshio++ (Gmsh
.msh, Abaqus.inp, Nastran, UNV, Medit, Netgen, SU2, XDMF, Triangle.poly, Exodus, CGNS, MOAB, Salome.med— SubModelParts survive as MED families, and as real*NSET/*ELSETsets in Abaqus — and more, including the field-only.dex/.ip/.mfftargets and the write-only SVG/TikZ figure formats, grouped in the Export menu under Solvers, Fields, and Figures). - Inspect an entity by clicking it: the Inspect toolbar button turns clicks into a probe — id, block, SubModelPart membership and every field value at the picked node/element/condition, with no id needed up front (unlike Find). Its Measure sub-mode draws a line between two clicked nodes and reports the distance and Δx/Δy/Δz.
- Isolate a value range: the Field panel's Threshold mode shows only the cells whose value falls inside an editable window, combinable with contour colouring; contour/isosurface/threshold also take a component selector, a lockable colour range, a log scale, discrete bands, and an in-scene scalar bar that survives a screenshot.
- Clip at any angle: the nav card's Clip group takes the X/Y/Z presets or a Free mode with raw normal-vector inputs, plus flip, an Off/On toggle and a live position readout.
- Tune the render: Advanced ▸ Lighting… (specular/ambient/diffuse + backface culling, useful for spotting an inverted shell from the inside) and Advanced ▸ Camera Bookmarks… (named views for the session, with a JSON textarea to copy one out or paste one in). Keys
1–6snap to ±X/±Y/±Z andito an isometric view; hovering an outline row reveals a per-layer opacity slider. - Screenshots: save the current view as a PNG (View ▾ ▸ Screenshot…, or
Ctrl+Alt+P).
| Outline & edit sidebar | View menu |
|---|---|
![]() | ![]() |
The viewer's toolbar is Reset · Pan · Quality · Field · Find · Inspect · View ▾ · Advanced ▾: the display toggles (Node IDs, Grid) and Screenshot live in View ▾, and Clip moved into the nav card. The extension also draws its own File menu in a strip at the top of the view; KKSS hides it, since the native File menu already covers Open / Save / Save As / Export — plus Save Problem… (
Ctrl+Alt+S) and Load Problem… (Ctrl+Alt+O), which only exist in that strip upstream.
Problemtypes: Kratos case setup
The Problemtype sidebar section turns the loaded MDPA model into a runnable Kratos case: pick a built-in (Structural, Fluid, Convection-Diffusion, Potential Flow, Shallow Water) or a workspace .js/.py problemtype, assign conditions and materials to SubModelParts, then Generate writes ProjectParameters.json, the materials file(s), and MainKratos.py next to the mesh; Run launches python MainKratos.py in the embedded terminal; Open results opens the first vtk_output/ file back in the viewer. Kratos itself isn't bundled — point Settings at a local install or rely on a pip-installed KratosMultiphysics on PATH.
Flowgraph is a built-in that replaces the sidebar forms with an embedded node-editor: selecting it splits the viewport (toggle the split direction, or hide/restore the pane) to show the @kratos-flowgraph/flowgraph graph editor, seeded from the current case's ProjectParameters.json; its own Generate button writes the graph back the same way as the standard flow. It's UI-only — there's no headless/MCP equivalent — and it's why KKSS is licensed AGPL-3.0: Flowgraph itself is AGPL-3.0, and the mesh engine bundling it moved to AGPL-3.0-or-later.
Timeline discovery
Opening one file of a Kratos-style series (<prefix>_<rank>_<step>.vtk) discovers its siblings, builds the timeline, and merges rank/subpart files into the outline. The directory is watched, so a still-running simulation keeps extending the timeline as new steps land on disk.
Exodus (.e/.exo/.ex2) drives the same timeline from the steps recorded inside the single file, so no sibling naming is needed; that one file is watched instead of the directory, and a solver still appending steps to it extends the timeline live.


