Skip to content

Render fieldcompare diff visualizations#883

Open
PranjalManhgaye wants to merge 1 commit into
precice:developfrom
PranjalManhgaye:issue-441-visualize-diffs
Open

Render fieldcompare diff visualizations#883
PranjalManhgaye wants to merge 1 commit into
precice:developfrom
PranjalManhgaye:issue-441-visualize-diffs

Conversation

@PranjalManhgaye

Copy link
Copy Markdown
Collaborator

Summary

  • Render archived fieldcompare diff VTK files as PNG images when result comparison fails.

  • Generate one image per numeric point field using distinct sphere glyphs and a generic automatically selected view.

  • Store images under diff-results/visualizations/ in the system-test artifacts.

  • Keep visualization best-effort so rendering errors do not hide the original fieldcompare failure.

Fixes #441.

Test plan

  • Generated PNGs from synthetic scalar and vector VTK fields.

  • Verified the archive-to-visualization failure path locally.

  • Rendered five real CI diff VTK files, producing 13 PNGs.

  • Checked zero and non-zero differences visually.

  • Ran pre-commit checks successfully.

@MakisH MakisH left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for the PR! Some first comments, I will continue once I can run it.

Comment thread changelog-entries/441.md
@@ -1 +1 @@
- Archive fieldcompare diff VTK files into a `diff-results/` folder in each systemtest run directory on failure so they are easy to find in CI artifacts when investigating comparison failures (fixes [#441](https://github.com/precice/tutorials/issues/441)). Nested paths under `precice-exports/` are preserved under `diff-results/`.
- Archive fieldcompare diff VTK files into a `diff-results/` folder in each systemtest run directory on failure so they are easy to find in CI artifacts when investigating comparison failures (fixes [#441](https://github.com/precice/tutorials/issues/441)). Nested paths under `precice-exports/` are preserved under `diff-results/`, and each numeric point field is rendered headlessly as a sphere-glyph PNG in `diff-results/visualizations/`.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Links to both PRs should be mentioned here. It looks like this previously slipped.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like we need more dependencies. Running on GHA, I get:

2026-07-18 08:56:07.732 (   2.224s) [    7FE8965761C0]vtkOpenGLRenderWindow.c:645   WARN| Failed to load EGL! Please install the EGL library from your distribution's package manager.
2026-07-18 08:56:07.732 (   2.225s) [    7FE8965761C0]vtkOSOpenGLRenderWindow:149   WARN| libOSMesa not found. It appears that OSMesa is not installed in your system. Please install the OSMesa library from your distribution's package manager.
2026-07-18 08:56:07.734 (   2.226s) [    7FE8965761C0]vtkOpenGLRenderWindow.c:645   WARN| Failed to load EGL! Please install the EGL library from your distribution's package manager.
2026-07-18 08:56:07.734 (   2.226s) [    7FE8965761C0]vtkOSOpenGLRenderWindow:149   WARN| libOSMesa not found. It appears that OSMesa is not installed in your system. Please install the OSMesa library from your distribution's package manager.
CRITICAL: Fieldcompare returned non zero exit code, therefore Channel transport (fluid-openfoam, transport-openfoam) failed

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The respective images could also be added to the _logs build artifact in the GHA workflow.

Even better would be if we could add them on the job summary. I guess that images on job summaries are supported, but I am not sure where to source the image from.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Archive diff files in the reports

2 participants