ParaView Visualization

Category: Open-Source CAE | Revised 2026-10-02
CAE visualization for paraview visualization theory - technical simulation diagram
ParaView Visualization

Theory: the data ParaView handles

Overview

🙋

I can make nice pictures in ParaView, but I'm unsure whether to trust the numbers.

🎓

Keeping in mind where data live prevents most misreadings. ParaView data are either cell data, one value per element, or point data, values per node. OpenFOAM's finite-volume results are inherently cell data, while finite-element solvers usually output nodal values extrapolated from integration points. To smooth displays, ParaView may average cell data into point data (Cell Data to Point Data), flattening local peaks. Slices and Plot Over Line values are interpolated from the source data, so on coarse meshes they can differ from true values. Beyond how a picture looks, check which data were processed how to produce a number.

Averaging and a check formula

$$ \bar{\sigma}_{\text{node}} = \frac{1}{n}\sum_{e=1}^{n}\sigma_e = \frac{180+170+120+110}{4} = 145\ \text{MPa},\qquad A_{\text{side}} = \pi D L = \pi \times 10 \times 100 \approx 3{,}142\ \text{mm}^2 $$

Left: the nodal value when four elements sharing a node are averaged. Right: the side area of a cylinder (10 mm diameter, 100 mm long), usable to check area with Integrate Variables.

Coffee Break Trivia

ParaView and VTK

VTK (the Visualization Toolkit), on which ParaView is built, began in the 1990s as the software accompanying a visualisation textbook by three researchers and has since been developed by Kitware. ParaView itself started around 2000 as a collaboration between Los Alamos National Laboratory and Kitware to visualise huge supercomputer results in parallel, and is now a standard tool for viewing scientific computing results.

Worked examples

The 19% difference is at the shared node of four illustrative cells; it does not imply a universal 19% drop in global maxima. A scalar pressure-area integral is not a force vector: integrate pressure times the surface normal and include viscous traction where relevant. Stress averaging and extrapolation must match the assessment method.

Example 1: stresses of four elements sharing a node

Display methodValue shown near the nodeDifference from element max
Cell data (per element)180 MPa0%
Cell Data to Point Data (averaged)145 MPa−19%

The four elements carry 180, 170, 120 and 110 MPa. The steeper the stress gradient, the more averaging loses. For fatigue or strength assessment use element values or solver-extrapolated nodal values, not averaged nodal values.

Example 2: checking with Integrate Variables

QuantityExpectedIf it doesn't match
Cylinder side area (10 mm × 100 mm)≈ 3,142 mm²Unit (m/mm) mix-up
Vector integral of pressure times face normalSolver pressure force, same surface and unitsPressure units, normals, inclusion of viscous force
Inflow and outflow ratesEqual (steady, incompressible)Poor convergence, wrong boundary
🙋

Plot Over Line gives a velocity profile that doesn't match the solver near the wall. Why?

🎓

Check interpolation and how wall boundary values are handled. Plot Over Line places a set number of points (Resolution) along the line and reports interpolated values at each. With cell data you get a staircase depending on which cell each point falls in; with point data, values interpolated from averaged nodes. Neither may match the values on the wall boundary face (an OpenFOAM boundary patch). To see wall values correctly, include boundary patches when reading OpenFOAM data, keep the line end slightly inside the wall, or output wall quantities directly with solver function objects such as wallShearStress. Also, a Resolution coarser than the mesh misses sharp changes, so space points more finely than the near-wall cells.

Practical workflow

  1. Load results and check in the Information tab whether data are cell or point data, and their ranges and units.
  2. Check known quantities (area, volume, flow rate) with Integrate Variables.
  3. Assess maxima on cell data or extrapolated nodal values, avoiding averaging.
  4. Understand the physics with slices, contours and streamlines; label figures with units and colour-bar ranges.
  5. For repeated processing, record a Python Trace and automate with pvpython or pvbatch.
Coffee Break Trivia

“Beware the rainbow colour map”

The long-popular rainbow colour map does not change lightness uniformly, so bands of yellow or cyan suggest boundaries that aren't there, and some viewers with colour-vision differences cannot read it. ParaView's default has moved to maps with uniform lightness. For figures that must convey magnitude correctly, use such maps and keep colour-bar ranges consistent between figures to avoid misleading comparisons.

Common mistakes

Mistakes and fixes

MistakeEffectFix
Max from averaged point dataPeaks underestimatedUse cell or extrapolated values
Not checking unitsValues off by orders of magnitudeCheck area and volume
Coarse Plot Over Line resolutionSharp changes missedFiner than cells
Different colour ranges per figureMisleading comparisonsUse common ranges
Opening parallel results unjoinedOnly part displayedOpen as Decomposed Case
🙋

I'd like to learn related topics.

Frequently asked questions

What is ParaView?

Open-source visualisation software developed by US national laboratories and Kitware, built on the VTK library. It reads results from many solvers — OpenFOAM, Code_Aster, Elmer, FEniCS and more — and displays them by combining filters such as slices, contours, streamlines and plots. It processes large data in parallel and can be automated with Python.

Why does the displayed maximum differ from the solver output?

Because converting cell data to point data averages it. If four elements sharing a node carry 180, 170, 120 and 110 MPa, Cell Data to Point Data gives that node the average, 145 MPa, so the 180 MPa peak appears 19% lower. For maximum values, view cell data directly or use nodal values extrapolated from integration points by the solver.

How do I check results were read correctly?

Check quantities with known geometry and units. Use Integrate Variables to compute area or volume and compare with design values, or integrate pressure over a surface and compare with the solver's force output. The side of a cylinder 10 mm in diameter and 100 mm long has about 3,142 mm²; if that doesn't match, suspect unit or scale handling on import.

References and scope of verification

Numbers are educational reference calculations under the stated assumptions. Sources document theory and setup, not proof that these numerical values were reproduced in each package. Engineering decisions require validation for the actual conditions.

Related Simulators

Experience the theory firsthand with the interactive simulator for this field

All Simulators

Related fields

Structural AnalysisFluid Analysis (CFD)Thermal Analysis
Rate this article
Thank you for your feedback!
Helpful
More details
Report error
Helpful
0
More details
0
Report error
0