Alpine-DAV / ascent

A flyweight in situ visualization and analysis runtime for multi-physics HPC simulations
https://alpine-dav.github.io/ascent/
Other
189 stars 65 forks source link

boxes of large dimension fail to render #907

Open BenWibking opened 2 years ago

BenWibking commented 2 years ago

There is a scaling or numerical precision issue somewhere in the rendering pipeline. Although well within the range of double precision values, rendering an AMR mesh with sides of length 1.5e20 in code units fails completely:

render_gasDensity00000

Rescaling the box to have sides of length 1 before passing the mesh to Conduit fixes the problem:

scaled_render_gasDensity00000

This rescaling should not be necessary if doubles are used throughout the pipeline.

BenWibking commented 2 years ago

Possibly related to: https://github.com/visit-dav/visit/issues/17602?

cyrush commented 2 years ago

@BenWibking thanks for the report.

I created a simple mesh example and was about to reproduce your issue.

I did find we were using float32 the coords where we should not be when we hand data to VTK-m, but that change alone isn't sufficient to resolve - we need to trace types though VTK-m to make sure there aren't other cases.

cyrush commented 2 years ago

910 adds unit tests that demonstrate this issue. (They are currently allowed to fail)

BenWibking commented 3 months ago

I think there might be code in VTK-m that has the same issue as this VTK code does: https://gitlab.kitware.com/vtk/vtk/-/merge_requests/11235