Skip to content

Conversation

@dragos-ana
Copy link
Collaborator

@dragos-ana dragos-ana commented Nov 26, 2025

  • Enables external vtu file support, see new default file. This is done in the same framework as for the Exodus files.
  • Improves testing suite: we now test for different files with different geometry types: exo, vtu, legacy. Also, the vtu path
    is tested for, which more reliably verifies if the geometry of the yaml file was initialized
    correctly.
  • Improves rendering of design conditions: threshold was replaced by the more reliable point filtering. Hence, only the relevant points / nodes are included, and not anymore ALL the cells containing these relevant points.

Interested parties: @tuchpaul, @LaSi5002

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR adds support for VTU geometry files alongside existing Exodus file support, enhances the testing suite to cover multiple geometry file types (Exodus, VTU, and legacy formats), and improves design condition rendering by replacing threshold-based filtering with more reliable point-based filtering that only includes relevant nodes.

Key Changes:

  • Implemented VTU file support with postprocessing logic similar to Exodus files
  • Enhanced test coverage with parametrized tests across different file types and verification of VTU path initialization
  • Improved design condition rendering accuracy by using direct point filtering instead of threshold-based cell selection

Reviewed changes

Copilot reviewed 12 out of 18 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
tests/test_fourcwebserver.py Refactored tests to use parametrization for testing multiple file types (DEFAULT, legacy, exo, vtu) and enhanced validation of server variables including VTU path verification
tests/files/tutorial_solid_vtu.4C.yaml Added new test file for VTU geometry type with design conditions across different geometric entities
tests/files/tutorial_solid_exo.4C.yaml Updated geometry file reference and added volume Dirichlet conditions for more comprehensive testing
tests/files/mat_transviso_viscoplast_refJC_log_substep.4C.yaml Added new test file for legacy geometry format with viscoplastic material model
src/fourc_webviewer_default_files/tutorial_solid_vtu.4C.yaml Added default VTU example file mirroring test file structure
src/fourc_webviewer_default_files/init.py Updated default input file from Exodus to VTU example
src/fourc_webviewer/read_geometry_from_file.py Added VTU file support infrastructure including postprocessing function, geometry type detection, unified mesh handling for exo/vtu files, and renamed methods for clarity
src/fourc_webviewer/input_file_utils/io_utils.py Extended material specifier list to support mixture materials and growth strategies
src/fourc_webviewer/fourc_webserver.py Improved design condition rendering using direct point filtering, removed unused code, adjusted sphere scaling factor, and cleaned up imports
requirements.txt Updated package versions and changed fourcipp dependency to git URL
requirements.in Changed fourcipp dependency from versioned to git URL

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@dragos-ana dragos-ana force-pushed the enable_vtu_support branch 2 times, most recently from b2ee716 to aa357a5 Compare November 26, 2025 14:51
@dragos-ana dragos-ana force-pushed the enable_vtu_support branch 3 times, most recently from be19dec to ba0edee Compare November 26, 2025 17:45
Copy link
Collaborator

@gilrrei gilrrei left a comment

Choose a reason for hiding this comment

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

Nice, just some minor refactoring comments, from Python perspective :)

- Enables external vtu file support,
see new default file. This is done in
the same framework as for the Exodus
files.
- Improves testing suite: we now test
for different files with different geometry
types: exo, vtu, legacy. Also, the vtu path
is tested for, which more reliably verifies
if the geometry of the yaml file was initialized
correctly.
- Improves rendering of design conditions:
threshold was replaced by more reliable point
filtering. Hence, only the relevant points are
included, and not all cells containing these
relevant points.
@dragos-ana
Copy link
Collaborator Author

@c-p-schmidt and @gilrrei: Thank you for the thorough review!

@dragos-ana dragos-ana merged commit 5d1d58b into 4C-multiphysics:main Nov 27, 2025
2 checks passed
@dragos-ana dragos-ana deleted the enable_vtu_support branch November 27, 2025 13:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants