Skip to content

Working with VTK Files

johodges edited this page Jul 30, 2024 · 7 revisions

The Visualization Toolkit (VTK) establishes a data format which is designed for use in high performance computing (HPC) applications. Detailed documentation of data format can be found on the website at VTK File Formats. This page provides a quick start guide to working with VTK files generated by FDS.

Quick-start

This section will demonstrate a basic example to generate VTK data with FDS and visualize the results in Paraview.

Open the storage example

  • Installed FDS: Examples/VTK/storage.fds
  • Source FDS: Verification/VTK/storage.fds

Edit the input file

  • Add "WRITE_VTK=T" to the &DUMP namelist. This tells FDS to generate VTK data.
  • Add "RESULTS_DIR='storage_results'" to the &DUMP namelist. This tells FDS to locate all the VTK and binary data in the subdirectory, "storage_results".
  • The namelist should now be:
    &DUMP NFRAMES=100, DT_CTRL=1., DT_DEVC=10., DT_HRR=10., SIG_FIGS=4, WRITE_VTK=T, RESULTS_DIR='storage_results' /

Run the example with fds

  • Navigate to the directory with the input file
  • Run fds with the command: mpiexec -np 8 fds storage.fds

Open Paraview and import the state file

  • Open Paraview
  • Click File->Load State
    image
  • Select the "storage_paraview.py" file and click ok
    image

Visualize fire and smoke results

  • Manipulate the viewport by using the preset views or clicking in the window and dragging the mouse. image
  • Click play to start the animation of the fire, smoke, and sprinkler droplets. image
  • After sprinklers activate, the view should be similar to the following. image

Visualize slice data

  • Hide the fire, smoke, and particles by clicking the open "eye" icon next to these two datasets in the pipeline browser
    image
  • Show the slice at a z-axis height of 7.4m by clicking the closed "eye" icon in the pipeline browser.
  • Click on the z-axis slice in the pipeline browser and the properties window will appear.
    image
  • Click the drop down icon under "Coloring" and change it to "TEMPERATURE".
    image
  • Use a similar approach to activate the "3D Slice Extraction" in the pipeline browser. Click on "3D Slice Extraction" in the pipeline browser and a plane visualization will appear in the viewport which can be used to translate and rotate extracted plane from the 3D data.
    image
  • Move the plane to Origin: -3, 0, 4.5 with Normal 1, 0, 0 and click apply.
    image
  • Click on the drop-down icon under "Coloring" and change it to "TEMPERATURE".
  • Deselect the "3D Slice Extraction" from the pipeline browser by clicking any of the other datasets or the "builtin" root tree at the top. This will hide the plane which was used to move the slice extraction plane.
    image
  • Click the run icon to see the animation of slice data.

Visualize boundary data

  • Hide the slice data from the previous step by clicking the "eye" icon for each of the slice datasets in the pipeline browser.
  • Click the "eye" icon next to the boundary data and select coloring by "HRRPUA". You may see overlap between the geometry and boundary data. This can be removed by hiding the geometry data. image

Frequently Asked Questions

What is an attribute not found error in Paraview and how do I fix it?

The python state file interface in Paraview has syntax changes over different releases of Paraview. This error typically occurs when the configuration file generated by FDS tries to modify a parameter that does not exist in the version of Paraview used. If this occurs you can comment out the line in the Paraview state file and reload it. Please report these observations in the issue tracker with the tag "Paraview compatibility" and provide your FDS input file and Paraview version.

How do I use Paraview on a remote system?

Using Paraview on a remote system depends on how the server is configured. Oak Ridge provides information a typical configuration OLCF Paraview Guide. See the user guides for existing HPC configurations and discuss with the system administrator for configuration of new systems.

How do I output human-readable / ASCII VTK data with FDS?

Add the flag VTK_BINARY=F to the &MISC to change from binary to ASCII output in VTK files.

What processing operations exist in Paraview?

See the Paraview User's Guide.

How do I do [processing operation] in Paraview?

See the Paraview User's Guide.

[Processing operation] crashed in Paraview, what can I do?

The process flow for reporting issues with the VTK output are the following:

  • Verify that the VTK data output by FDS is valid. Swap to ASCII output for the files and verify the crash still occurs.
  • If the crash occurs for binary data but not ASCII data, report the issue in the FDS Issue Tracker with the tag "VTK ASCII/Binary Data" and include the FDS input file, FDS version, and Paraview version.
  • If the crash occurs in both data types, open the ASCII data and manually inspect the data fields for unexpected outputs (e.g., missing data, underflow/overflows, precision erors, etc.). If the crash occurs for binary data but not ASCII data, report the issue in the FDS Issue Tracker with the tag "VTK ASCII/Binary Data" and include the FDS input file, FDS version, and Paraview version.
  • If no abnormalities are observed in the VTK data, report the issue to the Paraview Issue Tracker.

How do I request a new feature in Paraview?

Report the feature request to the Paraview Issue Tracker.

Clone this wiki locally